linux驱动
文章平均质量分 77
yuanxinfei920
这个作者很懒,什么都没留下…
展开
-
2021-01-09
meminfo文件详解目录我们可以从/proc/meminfo中查看内核使用内存情况的各种信息。一个/proc/meminfo的内容看起来是这样的:cat /proc/meminfo |nl 1 MemTotal: 3814108 kB 2 MemFree: 111908 kB 3 MemAvailable: 394844 kB 4 Buffers: 22976 kB...原创 2021-01-09 12:17:05 · 450 阅读 · 0 评论 -
android switch模块
前面我们已经提到过Android新增了一个switch处理模块,但是没有说明其具体用途,这里将对该模块进行详细的分析。switch是Android引进的一个新驱动,用于检测一些开关量。比如检测耳机插入和USB设备插入等。Switch的构架原理switch模块包含两部分内容:首先是switchclass,它在Android中是作为一个module来实现的,可以进行动态加载转载 2016-06-22 09:13:25 · 379 阅读 · 0 评论 -
KDB调试Linux4.2.6内核过程记录
KDB调试内核代码步骤记录:一、配置内核,内核版本为Linux4.2.6Kernel hacking --->printk and dmesg options --->[*] Show timing information on printks(4) Default message log level (1-7)[ ] Delay each bo转载 2016-11-20 19:03:14 · 893 阅读 · 0 评论 -
itop4412添加按键key
1.kernel部分修改在mach-itop4412.c(arch/arm/mach-exynos下)static struct gpio_keys_button gpio_buttons[]添加{ .gpio = EXYNOS4_GPX2(6), //.code = 38,原创 2016-12-06 10:00:38 · 827 阅读 · 0 评论 -
linux设备驱动调试方法
如何根据oops定位代码行我们借用linux设备驱动第二篇:构造和运行模块里面的hello world程序来演示出错的情况,含有错误代码的hello world如下:#include <linux/init.h>#include <linux/module.h>MODULE_LICENSE("Dual BSD/GPL"); static int hello_init...转载 2018-03-15 13:44:59 · 1824 阅读 · 0 评论 -
pthread_cond_wait学习笔记
近期学习了线程等待和激活的相关知识。先介绍几个api:pthread_cond_t表示多线程的条件变量,用于控制线程等待和就绪的条件。一:条件变量的初始化:条件变量和互斥锁一样,都有静态动态两种创建方式,静态方式使用PTHREAD_COND_INITIALIZER常量初始化。pthread_cond_t cond = PTHREAD_COND_INITIALIZER;动态方式初始化:1 首先要ne...转载 2018-02-23 16:44:43 · 162 阅读 · 0 评论 -
堆和栈的区别
对于编程初学者来说会接触到一些难以理解的名称,比如堆(heap)、栈(stack)、堆栈(stack)等。初学开发过程中往往让人混淆不清。今天我们来谈谈堆和栈的具体区别,来帮助初学者理清思路。堆和栈的区别一直都是永恒的话题,为此我也查了很多的资料,以防自己的理解错误,而给他人造成理解偏差。先从最简单的一个例子引出堆和栈:void function(){int *p = (int *)malloc(...转载 2018-04-04 14:32:13 · 209 阅读 · 0 评论