自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(339)
  • 收藏
  • 关注

转载 动态追踪技术漫谈

https://blog.openresty.com.cn/cn/dynamic-tracing/

2022-01-09 19:03:50 348

转载 《面向应用开发者的系统指南》导论

https://www.codedump.info/post/20200501-system-guide-for-application-programmer/

2022-01-09 18:42:28 315

转载 Linux深入理解Socket异常

在各种网络异常情况的背后,TCP是怎么处理的?又是怎样把处理结果反馈给上层应用的?本文就来讨论这个问题。分为两个场景来讨论建立连接时的异常情况1 正常情况下  经过三次握手,客户端连接成功,服务端有一个新连接到来。2 客户端连接了服务端未监听的端口  在这种情况下,服务端会对收到的SYN回应一个RST(RFC 793 3.4),客户端收到RST之后,终止连接,并进入CLOSED状态。...

2020-02-04 21:49:24 560

转载 中断唤醒系统流程

1. 前言曾几何时,不知道你是否想过外部中断是如何产生的呢?又是如何唤醒系统的呢?在项目中,一般具有中断唤醒的设备会有一个interrupt pin硬件连接到SoC的gpio pin。一般来说,当设备需要唤醒系统的时候,会通过改变interrupt pin电平状态,而SoC会检测到这个变化,将SoC从睡眠中唤醒,该设备通过相关的子系统通知上层应用做出相应的处理。这就是中断唤醒的过程。说起来很简洁...

2020-02-04 21:45:30 1037

转载 面经 cisco

面经 ciscohttps://www.cnblogs.com/alantu2018/p/9236313.html面经 cisco 2https://www.cnblogs.com/alantu2018/p/9236344.html

2020-02-04 21:41:26 455

转载 linux驱动工程面试必问知识点

linux内核原理面试必问(由易到难)简单型1:linux中内核空间及用户空间的区别?用户空间与内核通信方式有哪些?2:linux中内存划分及如何使用?虚拟地址及物理地址的概念及彼此之间的转化,高端内存概念?3:linux中中断的实现机制,tasklet与workqueue的区别及底层实现区别?为什么要区分上半部和下半部?4:linux中断的响应执行流程?中断的申请及何时执行(何时执行中...

2020-02-04 21:39:26 937

转载 linux驱动面试题整理

1、字符型驱动设备你是怎么创建设备文件的,就是/dev/下面的设备文件,供上层应用程序打开使用的文件?答:mknod命令结合设备的主设备号和次设备号,可创建一个设备文件。评:这只是其中一种方式,也叫手动创建设备文件。还有UDEV/MDEV自动创建设备文件的方式,UDEV/MDEV是运行在用户态的程序,可以动态管理设备文件,包括创建和删除设备文件,运行在用户态意味着系统要运行之后。那么在系统启动...

2020-02-04 21:09:35 1044

转载 Linux驱动面试题

Linux驱动面试题1、 Linux设备中字符设备与块设备有什么主要的区别?请分别列举一些实际的设备说出它们是属于哪一类设备。字符设备:字符设备是个能够像字节流(类似文件)一样被访问的设备,由字符设备驱动程序来实现这种特性。字符设备驱动程序通常至少实现open,close,read和write系统调用。字符终端、串口、鼠标、键盘、摄像头、声卡和显卡等就是典型的字符设备。块设备:和字符设备类似...

2020-02-04 21:01:38 999

转载 Linux中匿名页的反向映射

vma, anon_vma和anon_vma_chain的联系本文主要参考了vma, anon_vma和anon_vma_chain的联系这篇文章,结合相关资料,对该文进行了一些改进。Linux提供了内存映射这一特性,它实现了把物理内存页映射(map)到进程的地址空间中, 以实现高效的数据操作或传输。内核在处理这一特性时, 使用了struct vm_area_struct, struct an...

2020-02-04 20:20:25 908

转载 非线性映射

版权声明:本文为CSDN博主「CQ062364」的原创文章,遵循CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/CQ062364/article/details/38499937mmap是将一个文件中的连续部分映射到虚拟内存中的一块连续的区域,它做的映射是线性映射,如果需要将一个文件中的不同部分以不同的顺序映射到虚拟内存...

2020-02-04 20:11:04 2577

转载 (十五)Linux内存管理之RMAP

http://www.coder55.com/article/33206背景Read the fucking source code! --By 鲁迅A picture is worth a thousand words. --By 高尔基说明:Kernel版本:4.14ARM64处理器,Contex-A53,双核使用工具:Source Insight 3.5, Visio概述...

2020-02-04 20:05:40 1337

转载 imx6q平台的gpio配置方法

这里介绍一下imx6q平台的gpio配置方式,如下图所示为原理图(从原理图中可看到每个引脚的名称)。比如引脚名称为GPIO_16,打开kernel_imx/arch/arm/boot/dts/imx6q-pinfunc.h文件(该文件都是一些宏定义,固定形式为MX6QDL_PAD_引脚名_引脚功能描述),搜索GPIO_16,可看到如下结果<mux_reg conf_reg input_...

2019-07-11 14:23:34 482

转载 imx6设备树pinctrl解析

最近在移植linux,用到kernel版本为3.14.28,在高版本的内核源码中用到了设备树(device-tree),设备树中用到pinctrl的配置,记录一下。1、普通设置在配置串口时,pinctrl的配置信息如下所示:&uart2 { pinctrl-names = "default"; pinctrl-0 = <&pinctrl_uart...

2019-07-11 14:21:05 366

转载 飞思卡尔IMX6处理器的GPIO-IOMUX_PAD说明

在linux或android系统中,假如我们要配置飞思卡尔IMX6处理器的GPIO管脚,比如是GPIO_19这个管脚,那么要像这样:#define MX6Q_PAD_GPIO_19__GPIO_4_5 \ (_MX6Q_PAD_GPIO_19__GPIO_4_5| MUX_P...

2019-07-11 14:14:13 948

转载 imx6的IOMUX配置方法

2016年03月14日 10:26:49 9527zyj 阅读数 5218版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_29729577/article/details/50884292imx6芯片利用IOMUX机制来解决引脚复用的问题,其引脚配置方法也有些复杂,它涉及到的寄存器有三类:1.PAD控制寄存器2.MUX控制寄存器3....

2019-07-11 14:04:27 414

转载 Android的init过程详解(一)

2013年04月14日 20:06:42 geekguy 阅读数 7785更多所属专栏: Android深度探索版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/nokiaguy/article/details/8800962Android的init过程(二);初始化语言(init.rc)解析本文使用的软件版本Android:4.2.2L...

2019-07-10 19:56:43 977

转载 Android的init过程(二):初始化语言(init.rc)解析

2013年06月17日 09:36:09 geekguy 阅读数 34155更多所属专栏: Android深度探索版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/nokiaguy/article/details/9109491Android的init过程(一)本文使用的软件版本Android:4.2.2Linux内核:3.1.10在上...

2019-07-10 19:47:42 301

转载 C调用C++库和C++调用C库的方法

C++调用C的函数比较简单,直接使用extern “C” {}告诉编译器用C的规则去调用C函数就可以了。CAdd.hint cadd(int x, int y);CAdd.c#include "CAdd.h"#include <stdio.h>int cadd(int x, int y) { printf("from C function.\n"); ...

2019-07-04 14:27:47 305

转载 inittab脚本启动解析

Linux 开机脚本启动顺序:第一步:启动内核第二步:执行init (配置文件/etc/inittab)第三步:启动相应的脚本,执行inittab脚本,并且执行里面的脚本/etc/init.d rc.sysinit rc.d rc.local。。。第四步:启动login登录界面 login第五步:在用户登录的时候执行sh脚本的顺序:每次登录的时候都会完全执行的 /etc/profile ...

2019-07-01 19:17:08 360

转载 详解Linux系统中的进程初始化配置文件inittab

/etc/inittab文件描述了哪些进程开始启动并正常运行。inittab为linux初始化文件系统时init初始化程序用到的配置文件。这个文件负责设置init初始化程序初始化脚本在哪里;每个运行级初始化时运行的命令; 开机、关机、重启对应的命令;各运行级登陆时所运行的命令。inittab文件中的条目的格式如下:label:runlevels:action:process 下面分别介绍各...

2019-07-01 19:14:37 697

转载 解决dropbear在busybox中使用无法使用本地用户登录问题

dropbear是一个轻量级的ssh2服务器和客户端,动态编译在170K左右,远远小于openssh的1.4M, 适合嵌入式系统使用.DropBear http://matt.ucc.asn.au/dropbear/dropbear.html./configuremake生成的文件:dropbear: ssh2 serverdropbearkey: 密钥生成器dropbearc...

2019-07-01 19:09:11 845

转载 PIC和PIE

https://www.cnblogs.com/sword03/p/9385660.html1概念•ELF。Exucutable and Linkable Format,译为“可执行和可链接的格式”。它是关于可执行文件、对象代码、共享库和内核导出的一种公共标准文件的格式定义,广泛应用于类unix系统。每个ELF文件由三个部分组成:Program header table、Sectoin he...

2019-07-01 16:06:52 615

转载 GCC中的pie和fpie选项

https://blog.csdn.net/ivan240/article/details/5363395GCC中的pie和fpie选项Position-Independent-Executable是Binutils,glibc和gcc的一个功能,能用来创建介于共享库和通常可执行代码之间的代码–能像共享库一样可重分配地址的程序,这种程序必须连接到Scrt1.o。标准的可执行程序需要固定的地址,...

2019-07-01 16:06:13 6512

转载 围观迅为IMX6开发板QT下LVDS和HDMI如何双屏异显的

https://www.cnblogs.com/minyue33/p/8084944.html首先将迅为-IMX6开发板分别连接9.7寸屏和HDMI显示器然后使用MfgTool工具烧写QT系统然后拨码开关设置成从emmc启动在uboot命令行下设置开发板为9.7寸屏显示(这样也会同时设置HDMI)设置完,保存配置,如下图:然后设置启动QT系统,并保存设置,如下图:然后开发板重新启...

2019-06-24 18:17:10 996

转载 linux中如何在fb上显示

转载 注明 ;http://blog.csdn.net/u011046042/article/details/68066091最简单的代码如下:#include <unistd.h>#include <stdio.h>#include <stdlib.h>#include <fcntl.h>#include <string.h&gt...

2019-06-24 11:25:31 1182

转载 头文件 string.h cstring string 区别

1.#include //不可以定义string s;可以用到strcpy等函数using namespace std;#include //可以定义string s;可以用到strcpy等函数using namesapce std;#include <string.h> //不可以定义string s;可以用到strcpy等函数2.1)文...

2019-06-24 10:08:48 210

转载 USB OTG模式及切换

https://blog.csdn.net/kris_fei/article/details/78620960Platform: RK3288OS: Android 6.0Kernel: 3.10.92先提USB HOST/DEVICE/OTG概念:OTG控制器可以做host,也能做device,控制器的角色一般由USB ID电平来决定。完整的USB2.0 OTG 控制器硬件信号如下:...

2019-06-14 12:12:05 8432

转载 usb热插拔原理

在讲插拔时,我们先了解一下设备插入到hub里面,会有什么结果。“USB主机是如何检测到设备的插入的呢?首先,在USB集线器的每个下游端口的D+和D-上,分别接了一个15K欧姆的下拉电阻到地。这样,在集线器的端口悬空时,就被这两个下拉电阻拉到了低电平。而在USB设备端,在D+或者D-上接了1.5K欧姆上拉电阻。对于全速和高速设备,上拉电阻是接在D+上;而低速设备则是上拉电阻接在D-上。这样,...

2019-06-14 12:11:59 4537

转载 USB OTG ID 检测原理

OTG 检测的原理是:USB OTG标准在完全兼容USB2.0标准的基础上,增添了电源管理(节省功耗)功能,它允许设备既可作为主机,也可作为外设操作(两用OTG)。USB OTG技术可实现没有主机时设备与设备之间的数据传输。例如:数码相机可以直接与打印机连接并打印照片,手机与手机之间可以直接传送数据等,从而拓展了USB技术的应用范围。在OTG中,初始主机设备称为A设备,外设称为B设备。也就是说,...

2019-06-14 12:11:50 565

转载 gerrit refs相关的一些小研究

https://blog.csdn.net/windfromthesouth/article/details/73467849gerrit 作为 code review使用不算难,然鹅,总有一些内容知其然不知其所以然,这里稍作研究和记录。1. refs/for 和 refs/heads向gerrit服务器提交代码命令:$git push origin HEAD:refs/for/mybra...

2019-06-14 12:11:44 739

转载 Git命令本质

总结一下updatefetch操作的本质是更新repo所指定远程分支的头指针(server->refs/remotes/xxx/)merge操作的本质是合并当前分支和指定的头指针(refs/remotes/xxx->refs/heads)pull操作的本质是fetch + mergecommitcommit的本质是修改了当前分支的头指针(refs/heads)push操作...

2019-06-14 12:11:37 296

转载 git命令行(3)之远程版本库

https://blog.51cto.com/5162886/2090046一、远程版本库相关概念1.裸版本库和开发版本库裸版本库就是不含有工作区的版本库,而我们平常开发的代码库都是开发版本库,修改工作区,然后进行提交、推送提交等操作。可以使用git init --bare命令创建一个裸版本库。裸版本库一般作为服务器上的版本库。2.refspec**引用空间把远程分支版本库中的分支名映...

2019-06-14 12:11:29 488

转载 关于refs/for/ 和refs/heads/

https://www.cnblogs.com/onelikeone/p/6857932.html1. 这个不是git的规则,而是gerrit的规则,2. Branches, remote-tracking branches, and tags等等都是对commite的引用(reference),引用都以 “refs/……”表示. 比如remote branch: origin...

2019-06-14 12:11:14 1945

转载 Git 的origin和master解析

https://blog.csdn.net/qq_15037231/article/details/77878275首先要明确一点,对git的操作是围绕3个大的步骤来展开的(其实几乎所有的SCM都是这样)1. 从git取数据(git clone)2. 改动代码3. 将改动传回git(git push)这3个步骤又涉及到两个repository,一个是remote ...

2019-06-14 12:11:07 264

转载 Git 的origin和master解析

https://blog.csdn.net/qq_15037231/article/details/77878275首先要明确一点,对git的操作是围绕3个大的步骤来展开的(其实几乎所有的SCM都是这样)1. 从git取数据(git clone)2. 改动代码3. 将改动传回git(git push)这3个步骤又涉及到两个repository,一个是remote ...

2019-06-14 12:11:00 282

转载 Nand Flash的同步、异步、ONFI、Toggle

https://blog.csdn.net/feihe0755/article/details/805414141. SDR和DDRSDR(Single Data Rate),写读数据使用上升沿或下降沿来触发。因为只用上升沿或下降沿,对信号准确性要求较低。DDR(Double Data Rate),写数据时通过MCU来控制DQS信号跳变沿来触发(即上升沿和下降沿均触发),所以对信号的准确性要...

2019-06-14 12:10:54 691

转载 串口termios函数

https://blog.csdn.net/williamwang2013/article/details/8560552linux使用terminfo数据库来描述终端能力以及调用对应功能的方法POSIX定义了完成终端I/O的标准方法:TERMIOS函数族#include <termios.h>#include <unistd.h>struct termios{...

2019-06-14 12:10:43 907

转载 终端的原始模式和规范模式

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/fangfangwenwen/article/details/620377821. 终端有三种工作模式:规范模式、非规范模式、原始模式2. 在termios结构的c_lflag中设置ICANNON标志来定义终端以何种模式工作,默认为规范模式。3. 规范模式:所有输入基于行进行处理。在用户输入一个...

2019-06-14 12:10:36 815 1

转载 Wpa_supplicant.conf用法小结

Wpa_supplicant是linux系统下一个非常强大的无线网卡管理程序。google搜索到的它似乎不支持WPA2和AES,其实不然,参考它的文档可以发现,WPA2只是RSN的别名,而AES也是CCMP的一部分,所以它们的支持完全是没有问题的。它的文档看起来非常复杂,其实配置非常简单,下面先给出我的wpa_supplication.confctrl_interface=/var/run/w...

2019-06-14 12:10:30 16308 2

转载 wpa_supplicant及wpa_cli使用方法

https://segmentfault.com/a/1190000011579147?utm_source=tag-newestwpa_supplicant是一个连接、配置WIFI的工具,它主要包含wpa_supplicant与wpa_cli两个程序。通常情况下,可以通过wpa_cli来进行WIFI的配置与连接,如果有特殊的需要,可以编写应用程序直接调用wpa_supplicant的接口直接...

2019-06-14 12:10:25 714

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除