Linux驱动模型简介
来源:互联网 发布:java可以从事什么职业 编辑:程序博客网 时间:2024/06/05 03:06
Linux驱动模型可以从底层和上层两个层次来探究: 设备底层模型 和 设备模型的上层容器
Linux驱动模型和sysfs文件系统紧密相连,在内核中注册的每个kobject对象对应sysfs文件系统中的一个目录。
sysfs的引入是为了方便调试,设备模型的开发者将设备结构树导出为一个文件系统,这就是sysfs文件系统,它可以帮助用户能以一个简单文件系统的方式来观察系统中各种设备的拓扑结构。sysfs代替了先前处于/proc下的设备相关文件;另外它为系统对象提供了一个很有效的视图。
1. Linux设备底层模型
kobject, ktype 和 kset
kobject代表设备驱动模型中一个基本对象,是一个顶级,抽象类,
用来嵌入某一个具体的设备结构体中
ktype是kobj_type类型的结构体, 记录了kobject对象的一些属性(对象公共属性,sysfs操作集,对象释放处理方法等)
kset是一个kobject集合,包含了一系列的kobject,同时它本身也是一个kobject
相关操作函数:
kobject 相关函数
kobject_init() // 初始化kobject结构 kobject_add() // 将kobject对象注册到系统 kobject_init_and_add() // 初始化kobject,并将其注册到系统 kobject_create() kobject_create_and_add() kobject_set_name() // 设置kobject的名字 kobject_del() // 从系统中删除kobject对象 kobject_get() // 将kobject对象的引用计数加1,同时返回该对象指针 kobject_put() // 将kobject对象的引用计数减1,如果引用计数降为0,则调用release方法释放该kobject对象
kset也有类型的函数
kset_init() // kset_register() // kset_unregister() kset_create_and_add() kobject_del() // kset_get() // kset_put()
关于详细的描述可以参考内核文档 Documentation/kobject.txt
http://code.google.com/p/xue-xi/source/checkout
- Linux驱动模型简介
- LINUX设备驱动模型简介
- Linux设备驱动总线模型简介
- MDA:模型驱动架构 简介
- spring 事件驱动模型简介
- Linux驱动设备驱动模型
- linux驱动子系统--驱动模型
- Linux驱动设备驱动模型
- Linux设备驱动模型
- linux驱动内核模型
- linux驱动模型浅析
- linux驱动模型---笔记
- Linux设备驱动模型
- Linux 内核驱动模型
- Linux驱动模型
- Linux驱动模型
- Linux设备驱动模型
- linux设备驱动模型
- sql server 2005 还原数据库问题
- 在CentOS中使用 yum 安装MongoDB及服务器端配置
- 安卓页面技巧片段 - 2
- hdu2458(二分图+最大独立数+匈牙利算法)
- 2013 Multi-University Training Contest 1 Vases and Flowers HDU 4614
- Linux驱动模型简介
- 转--deb包如何安装
- mysql 连表查询
- Android动画学习笔记-Android Animation
- HDU 1053 Entropy(huffman 编码)
- Hdu 4619 简单图论
- 安卓下载文件出错,zip无法解压
- linux 下查看磁盘空间的使用量
- linux安装lua及错误解决