Android深度探索讀書筆記 第八章

來源:互聯網
上載者:User

標籤:

      代碼的重用分為靜態重用跟動態重用。靜態重用:採用標準的c程式的方式,將要重用的代碼放在其他的檔案中,如果要使用相應的某些功能,include相應標頭檔即可。動態重用:也就是一個linux驅動可以使用另外一個linux驅動中的資源。還有另外一種代碼共用的方式:,模組依賴,也稱為匯出符號。在一個驅動模組裡使用另外一個驅動模組裡的被匯出的符號(常量、變數、函數等)。編譯是由多個檔案組成的linux驅動,如果linux驅動代碼不多,可以將所有的代碼放在一個檔案中,如果linux驅動代碼比較複雜,就需要使用多個原始碼檔案存放不同的功能代碼,這樣有利於代碼的分類和管理。如果linux驅動要使用第三方的原代碼,那麼就得編譯多個原始碼檔案,最終產生.ko檔案或編譯進linux核心。在某些情況下需要強行卸載linux驅動:1、由於linux驅動模組的初始化函數進行了某些操作而崩潰,從而導致初始化函數無法正常反回。2、在使用rmmod命令卸載驅動時,系統會調用卸載函數,只有卸載函數成功返回時,linux驅動才會被卸載,如果卸載函數被阻塞,rmmod命令也會被阻塞,無法執行到卸載linux驅動模組的代碼。這種問題的根源就是卸載函數,因此只要將原來的卸載函數替換成一個空的卸載函數即可。

                                                              

                                                                        http://www.cnblogs.com/sam0304/

Android深度探索讀書筆記 第八章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.