Linux裝置驅動程式學習

來源:互聯網
上載者:User

前言:     接觸ARM-Linux已經有9個多月了,經曆了畢業設計和公司的練習設計,對ARM-Linux有了一定的瞭解,也讓我愛上了ARM-Linux,決心以後從事Linux的工作。     8月份開始,我算是從頭認認真真,一步一個腳印地學習ARM-Linux。先後對博創UP-NETARM2410-S和友善之臂SBC2440V4進行了系統移植,包括U-Boot1.2.0、Linux2.6.22.2,並針對3個網卡晶片進行了U-Boot和Linux的驅動移植,製作了一個cramfs和nfs檔案系統。可以說已經很好地構建了一個以網路為基礎的ARM-Linux開發平台。這些工作不僅是以後開發必須的,我也在這些過程中進一步地加深了對ARM-Linux系統的認識。由於工作的需要,兩個平台上的其他外設的驅動移植已經基本停滯了,現在開始完全投入到Linux裝置驅動程式的學習中。     我早在7月底開始就在看《Linux裝置驅動程式(第3版)》但是發現效果不明顯。究其原因:缺乏實踐。學編程就和學遊泳是一樣的,只是紙上談兵是學不會的。沒有在實踐中學習,很快就忘了所學的知識,到頭來只學了個大概。從今天開始我將跟隨《Linux裝置驅動程式(第3版)》的路線,邊學習邊編程,同時寫這份記錄,來鞏固學習的效果。     首先,因為我是在學習ARM-Linux,所以我所做的編譯都是交叉編譯,然後在ARM9開發板上運行。至於核心版本,我使用的是從 http://www.kernel.org/  上下載的主線標準核心Linux2.6.22.2。引用《Linux裝置驅動程式(第3版)》的原話:“如果想要學習驅動程式的編寫,則標準核心是最好的。”

·Linux裝置驅動程式學習(1)-字元裝置驅動程式 ·Linux裝置驅動程式學習(0)-Hello, world!模組 ·Linux裝置驅動程式學習(2)-調試技術·Linux裝置驅動程式學習(3)-並發和競態 ·Linux裝置驅動程式學習(4)-進階字元驅動程式操作[(1)ioctl and llseek] ·Linux裝置驅動程式學習(5)-進階字元驅動程式操作[(2)阻塞型I/O和休眠] ·Linux裝置驅動程式學習(6)-進階字元驅動程式操作[(3)裝置檔案的存取控制] ·Linux裝置驅動程式學習(7)-核心的資料類型 ·Linux裝置驅動程式學習(9)-與硬體通訊 ·Linux裝置驅動程式學習(8)-分配記憶體 ·Linux裝置驅動程式學習(10)-時間、延遲及延緩操作 ·Linux裝置驅動程式學習(11)-中斷處理 ·Linux裝置驅動程式學習(3-補)-Linux中的迴圈緩衝區 ·Linux裝置驅動程式學習(12)-Linux裝置模型(底層原理簡介) ·Linux裝置驅動程式學習(13)-Linux裝置模型(匯流排、裝置、驅動程式和類) ·Linux裝置驅動程式學習(14)-Linux裝置模型(各環節的整合) ·Linux裝置驅動程式學習(15)-Linux裝置模型(熱插拔、mdev 與 firmware)

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.