Linux Device Model
win9zz
Life is brief, and then you die, you know?
展开
-
Linux设备模型分析之kobject
一、kobject应用举例 Linux设备模型最基本的组成元素是kobject,我们先来看一个kobject的应用例子,该程序在Ubuntu 10.10, 2.6.32-38-generic-pae内核上调试通过。 [cpp] view plain copy #include #include #include #include #include #include #i转载 2017-03-26 12:54:05 · 1163 阅读 · 0 评论 -
设备驱动模型之class
前面看过了设备驱动模型中的bus、device、driver,这三种都是有迹可循的。其中bus代表实际的总线,device代表实际的设备和接口,而driver则对应存在的驱动。但本节要介绍的class,是设备类,完全是抽象出来的概念,没有对应的实体。所谓设备类,是指提供的用户接口相似的一类设备的集合,常见的设备类的有block、tty、input、usb等等。 class对应的代码转载 2017-04-03 13:16:56 · 1236 阅读 · 0 评论 -
Linux设备模型分析之device(基于3.10.1内核)
一、device定义 device结构体定义在include/linux/device.h文件中: [cpp] view plain copy 598/** 599 * struct device - The basic device structure 600 * @parent: The device's "parent" device, the device to which it is转载 2017-03-26 14:06:25 · 1353 阅读 · 0 评论 -
Linux设备模型分析之kset(基于3.10.1内核)
一、kset结构定义 kset结构体定义在include/linux/kobject.h文件中,其内容如下: [cpp] view plain copy 142/** 143 * struct kset - a set of kobjects of a specific type, belonging to a specific subsystem. 144 * 145 * A kset de转载 2017-03-26 13:53:15 · 1263 阅读 · 0 评论 -
Linux设备模型分析之kobject(基于3.10.1内核)
一、kobject结构定义 kobject是Linux设备模型的最底层数据结构,它代表一个内核对象。 kobject结构体定义在include/linux/kobject.h文件中: [cpp] view plain copy 60struct kobject { 61 const char *name; 62转载 2017-03-26 13:48:45 · 1413 阅读 · 0 评论 -
Linux设备模型分析之bus
前面我们分析了Linux设备模型中kobject、kset以及ktype的使用,它们是设备模型的最基础部分,在其上有更高级一层的bus、device和driver。在这一篇文章中,我们来看一下bus的用法。 一、相关数据结构 首先,我们列出本文涉及的相关数据结构。 [cpp] view plain copy 51struct bus_type { 52 const char转载 2017-03-26 13:41:52 · 1114 阅读 · 0 评论 -
Linux设备模型分析之kset
上一篇博客我们分析了Linux设备模型中kobject的注册和使用,在这一篇文章中,我们来看一下kset的用法。 首先我们看一个使用kset的例子,代码如下: [cpp] view plain copy #include #include #include #include #include #include #include MODULE_AUTHOR("h转载 2017-03-26 13:36:07 · 1188 阅读 · 0 评论 -
图解kset,kobject,subsys
linux设备模型方面是驱动中比较高级的一块内容,对于刚开始学习驱动开发人员来说开始必须掌握驱动模型的编写框架和常用函数,当设备模型框架熟悉之 后,就可以进入研究设备模型的实现。进入设备之前,我们必须搞清楚subsys,kset,kobject等概念。理清楚它们的结构,整个设备模型就了然 了。 学习前的须知: Linux设备模型的目的是:为内核转载 2017-03-19 23:35:37 · 2887 阅读 · 0 评论 -
Linux设备模型分析之device_driver(基于3.10.1内核)
一、device定义 device结构体定义在include/linux/device.h文件中: [cpp] view plain copy 598/** 599 * struct device - The basic device structure 600 * @parent: The device's "parent" device, the device to which it is转载 2017-03-26 14:07:45 · 1278 阅读 · 0 评论