驅動開發(fā)是整個嵌入式軟件開發(fā)中技術含量最高、難度最大,同時也是薪資最高、工作機會最少的一塊,處在整個嵌入式軟件開發(fā)的食物鏈上游。通過前面4部分課程的學習,大家已經(jīng)掌握了比較好的基礎,因此本課程能夠有機會帶大家更深入的去解析linux的內核驅動機制,譬如platform總線、I2C、input子系統(tǒng)、framebuffer子系統(tǒng),驅動的分離與分層原則,三種驅動模型(字符設備、塊設備、網(wǎng)絡設備)等等。這些內容再加上具體硬件的操作特性其實就是驅動開發(fā)的主體了,因此對這些內容的掌握其實就意味著你已經(jīng)入門驅動開發(fā)了,至少可以大方的在自己的求職簡歷上寫上“熟悉linux下常見驅動的調試開發(fā)”。
《Linux驅動開發(fā)》總計11個課程(112節(jié)、60小時),是《朱有鵬老師嵌入式linux核心課程》的第5部分,也是最后一部分了。
主講內容:
本課程是linux驅動開發(fā)的第11個課程,主要內容是linux的網(wǎng)絡驅動的介紹,首先講述了網(wǎng)絡設備驅動接口和之前講的2種的不同,然后以一個虛擬網(wǎng)卡驅動源碼學習了網(wǎng)卡驅動的框架,最后分析了一個實際網(wǎng)卡DM9000的驅動細節(jié)。
適用人群:
本課程是linux驅動開發(fā)的第11個課程,要求學過前面的課程,尤其是C語言高級專題及驅動基礎等課程,有一定編程能力,對linux內核驅動有一定掌握才能學習。
通過本課程學習,你將學會:
-
驅動模型和字符設備塊設備的區(qū)別
-
對網(wǎng)絡設備驅動的框架進行理解和分析
-
DM9000驅動源碼分析
-
驗證網(wǎng)絡設備驅動框架,并且對之前課程中學到的一些技巧進行運用