Linux设备驱动模型学习笔记(kobject,kset,subsystem子系统)
2013-04-05 13:23
881 查看
1. sysyfs展示了linux设备模型,sysfs中显示的每一个对象都对应一个kobject,但反过来不成立,每一个kobject并不一定出现在sysfs中,但kset会。使用了kobject_add函数添加某个kset中的kobject会在sysfs中显示为一个目录,其属性为目录中的文件。
2. kobject的作用为嵌入其他对象(如设备等)的结构体中,将其链接到设备模型中,并维护其生命周期(通过引用计数)。
3. kobject的存在需要创建它的模块的存在,因此:
4. kobject的release函数:
5.
6.
7.
8.
9.
10.
11.
12.
13. 总线:
14.
对于总线这个特殊的设备来说,除了要注册总线,还要注册它自己这个设备本身:
lddbus导出的注册接口如下?
sculld.h:
57 struct sculld_dev {
58 void **data;
59 struct sculld_dev *next; /* next listitem */
60 int vmas; /* active mappings */
61 int order; /* the current allocation order */
62 int qset; /* the current array size */
63 size_t size; /* 32-bit will suffice */
64 struct semaphore sem; /* Mutual exclusion */
65 struct cdev cdev;
66 char devname[20];
67 struct ldd_device ldev;
68 };
15. 驱动程序
2. kobject的作用为嵌入其他对象(如设备等)的结构体中,将其链接到设备模型中,并维护其生命周期(通过引用计数)。
3. kobject的存在需要创建它的模块的存在,因此:
4. kobject的release函数:
5.
6.
7.
8.
9.
10.
11.
12.
13. 总线:
14.
对于总线这个特殊的设备来说,除了要注册总线,还要注册它自己这个设备本身:
lddbus导出的注册接口如下?
sculld.h:
57 struct sculld_dev {
58 void **data;
59 struct sculld_dev *next; /* next listitem */
60 int vmas; /* active mappings */
61 int order; /* the current allocation order */
62 int qset; /* the current array size */
63 size_t size; /* 32-bit will suffice */
64 struct semaphore sem; /* Mutual exclusion */
65 struct cdev cdev;
66 char devname[20];
67 struct ldd_device ldev;
68 };
15. 驱动程序
相关文章推荐
- 嵌入式Linux驱动笔记(十六)------设备驱动模型(kobject、kset、ktype)
- Linux设备驱动模型学习之基础篇--Kobject.txt翻译
- Linux 设备模型之 (kobject、kset 和 Subsystem)(二)
- Linux设备模型,底层原理简介-[Kobject、Kset 和 Subsystem]
- Linux设备驱动模型学习之基础篇--Kobject.txt翻译
- Linux kernel驱动相关抽象概念及其实现 之“linux设备模型kobject,kset,ktype”
- linux总线设备驱动模型之Kobject&Kset
- 【加入自己的部分内容】Linux设备驱动模型学习之基础篇--Kobject.txt翻译
- Linux 设备模型之 (kobject、kset 和 Subsystem)(二)
- ldd3学习之十一(1):Linux设备模型---kobject,kset
- LDD3学习笔记设备模型之底层实现(kobject,kset) 收藏
- linux 下块设备驱动开发学习笔记 1
- linux 下块设备驱动开发学习笔记 2(sbull驱动在vmware上测试)
- linux 设备驱动开发学习笔记(一):并发控制
- LINUX设备驱动之设备模型二--kset
- Linux驱动学习笔记----------input输入子系统(基本概念与流程)
- linux内核部件分析(五)——设备驱动模型的基石kobject
- ldd3学习之十一(2):Linux设备模型---总线、设备、驱动
- 浅析Linux驱动模型中的底层数据结构kobject和kset
- Linux驱动模型学习(二)---字符设备驱动模型之二---初窥字符设备驱动