Linux设备驱动学习笔记
文章平均质量分 62
shen924
技术积累从点滴做起
展开
-
Linux设备模型
Linux设备模型是从内核2.6开始引入的,初衷是为了描述设备的拓扑结构及支持电源管理等新特性。从高次层来看设备模型主要由总线、设备、驱动构成,设备模型通过总线将系统中的设备和驱动关联起来。在设备模型中,所有的设备都通过总线相连,模型中的总线可以是实际物理总线或虚拟“平台”总线。 Linux设备模型通过数据结构kobject和kset来实现设备的拓扑结构和层次关系。1、kob原创 2013-03-11 22:49:17 · 651 阅读 · 0 评论 -
Linux内核链表常用操作函数
链表结构体,定义在中,如下:struct list_head { struct list_head *next, *prev;};这个结构通常是嵌入到别的结构体中来使用。链表常用操作函数有:1、链表静态初始化#define LIST_HEAD_INIT(name) { &(name), &(name) }#define LIST_HEAD(name) \ str原创 2013-03-16 22:42:56 · 909 阅读 · 0 评论 -
阻塞I/O和非阻塞I/O
(此原创系由读书笔记整理而来,方便学习查看) Linux字符设备的I/O操作可以分为:1、同步阻塞I/O这是I/O模型中最常用的一种,应用程序执行一个系统调用对设备进行read/write操作,这种操作会阻塞应用程序,直到设备完成读写操作或返回一个错误码。同步阻塞型I/O读写实现机制的底层支持:wait_event_interruptible/wake_up_interruptib原创 2013-03-26 23:35:42 · 809 阅读 · 0 评论