本人剛學linux驅動不久,把這段時間學習的一些總結體會寫出來,以起到拋磚引玉的作用,根據學習的加深,我會持續寫出來。
1.如果要對裝置進行有讀寫控制,字元裝置要實現cdev結構,塊裝置要實現gendisk結構。 2.
驅動模型提供標準的通用的管理裝置的框架、方法,把我們的驅動按照驅動模型的框架來構造,方法統一,很多重複**不需要重複編寫,節省開發時間。 3.
如果要在驅動模型框架下構造我們的裝置驅動程式,在構造前,首先分析該裝置需要驅動模型中那些元件的支援,以下是我分析總結的元件使用策略:
3.1如果需要裝置節點自動生成,需要實現class.
3.2如果需要功耗(電源)管理(休眠和喚醒):需要實現bus,device,driver.
3.3如果要實現裝置的自動探測和解除安裝:需要實現bus,device,driver。
linux系統已經實現了很多驅動,當我們新增新的驅動時,如果系統中某一已存在驅動型別,最好和該驅動類實現策略保持一致,這樣可以使用已有的成熟框架,使驅動可靠,另外和系統結合更緊密。
linux驅動學習總結一
這是我第一次寫部落格。希望把自己學習的知識進行總結,不斷的督促自己多總結多思考,更希望路過的大神進行指正和糾錯,共同進步 剛接觸linux驅動開發,自己對u boot 核心 根檔案系統在驅動開發中所起到的作用,還有驅動程式和應用程式兩者的關係不是特別清楚,在學習後有如下的總結。一.u boot 是一...
linux驅動學習(五) char dev總結
回顧 裝載模組到正執行的核心和移除模組 include module init module exit 用於指定模組的初始化和清除函式的巨集 init exit initdata exitdata include 最重要的標頭檔案之一,該檔案包含驅動程式使用的大部分核心api函式的定義,包含睡眠函式...
linux驅動學習(五) char dev總結
裝載模組到正執行的核心和移除模組 include module init module exit 用於指定模組的初始化和清除函式的巨集 init exit initdata exitdata include 最重要的標頭檔案之一,該檔案包含驅動程式使用的大部分核心api函式的定義,包含睡眠函式以及各...