Linux內核大量使用面向對象的設計思想,通過追蹤源碼,我們甚至可以使用面向對象語言常用的UML類圖來分析Linux設備管理的"類"之間的關系。這里以4.8.5內核為例從kobject,kset,ktype的分析入手,進而一探內核對于設備的管理方式

大學生就業(yè)培訓,高中生培訓,在職人員轉行培訓,企業(yè)團訓

container_of宏

這個宏幾乎是linux數(shù)據結構的基礎,Linux中的鏈表與傳統(tǒng)的鏈表不同,其鏈表的節(jié)點本身并不包含任何數(shù)據,任何想要插入到鏈表的數(shù)據只需要包含一個事先寫好的節(jié)點

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

大學生就業(yè)培訓,高中生培訓,在職人員轉行培訓,企業(yè)團訓

網友評論