《深入理解linux内核》学习笔记4 — 设备驱动程序模型 – xlsern

三个重要的数据结构—kobject , kset , kobj_type

linux设备驱动程序模型的核心数据结构有:kobject,kset,kobj_type。下图为阅读《深入理解linux内核》后,绘制的这三个数据结构的关系图。

总结

1.kset是一个集合,用于描述类型相同的设备的设备的数据结构的集合。

2.kobject链表中,各个节点都指向同一个kobj_type结构体,是因为,kset集合中,所有的结构体都是描述同一类型的设备,因此,可以共享此数据结构。而且,kobj_type为操作方法的集合,因此,各个相同类型的设备可以共用。

3.kset数据结构中,嵌入了一个kobject数据结构,而不是一个数据结构指针。从此可以看出,kset本质也是一个kobject对象,只不过比kobject多了一些属性。

4.kset与kobject关联可以类比为目录和目录中的文件。

自己战胜自己是最可贵的胜利。

《深入理解linux内核》学习笔记4 — 设备驱动程序模型 – xlsern

相关文章:

你感兴趣的文章:

标签云: