A. 想學習Linux 驅動,需要什麼知識
首先,接觸linux操作系統,在你的電腦上裝一個linxu操作系統(建議ubuntu,比
較友好),熟悉經常要用的命令,熟悉環境(建議看「鳥哥的linux私房菜」)。
其次,閱讀經典書籍是不可少的,建議先看ldd前四章,大概了解linux驅動的框架
,驅動是做什麼的,該如何寫驅動,那本書上有一些例子,可以在你的電腦上編譯
,執行看看。後面的章節在結合自己的情況而定。
第三,建議閱讀ulk(understanding the linux kernel)所有的內容,了解linux
內核的一些基本知識,在心中建立一個框架,不必完全懂,深入了解就好,以後經
常翻翻,受益無窮!
第四,別著急,這才是你真的進入linux驅動的第一步,花點錢買個開發板吧,然
後了解代碼的編譯,下載,看看板子的datasheet,針對自己感興趣的深入研究。
建議學習流程,led燈控制---tp---i2c匯流排-----lcd-----camera----flash----
wifi/bt等。因為這個裡面牽涉了甚多內核的子系統(input,v4l2,fb等
),所以可能要多話時間看代碼,了解代碼的框架,設計的思想等,只要一步一個
腳印,一定會有所成。
第五,因為現在的移動設備大多數都是android的了,所以你就要看看linux
kernel在android的作用,然後往上看看,看看hal層的代碼,這些在調試中都是需
要的,如果有興趣,更加可以看看framework的代碼了,學習android一些工作機制
,類似於surfaceflinger,audioflinger等等。。
《linux就該這么學》免費提供最新Linux技術教程書籍,為開源技術愛好者努力做
得更多更好