Linux内核大量使用面向对象的设计思想,通过追踪源码,我们甚至可以使用面向对象语言常用的UML类图来分析Linux设备管理的"类"之间的关系。这里以4.8.5内核为例从kobject,kset,ktype的分析入手,进而一探内核对于设备的管理方式

大学生就业培训,高中生培训,在职人员转行培训,企业团训

container_of宏

这个宏几乎是linux数据结构的基础,Linux中的链表与传统的链表不同,其链表的节点本身并不包含任何数据,任何想要插入到链表的数据只需要包含一个事先写好的节点

//include/linux/types.h184 struct list_head {                                                         
185     struct list_head *next, *prev;
186 };

大学生就业培训,高中生培训,在职人员转行培训,企业团训

网友评论