《Android深度探索》(卷1)HAL與驅動開發讀後感

來源:互聯網
上載者:User

標籤:

第6章: 第一個Linux驅動程式統計單詞個數

從本章開始將進入最令人激動人心前時刻,開始第一次進行Linux驅動的編寫。首先,簡單介紹了一下什麼是Linux驅動。並通過一個執行個體來詳細介紹編寫Linux程式的步驟。

總結如下:

編寫Linux驅動的方法:

  第1步:建立 Linux 驅動骨架(裝載和卸載 Linux 驅動)

  第2步:註冊和登出裝置檔案

  第3步:指定與驅動相關的資訊

  第4步:指定回呼函數

  第5步:編寫商務邏輯

  第6步:編寫 Makefile 檔案

  第7步:編譯 Linux 驅動程式

  第8步:安裝和卸載 Linux 驅動

Linux驅動測試的方法多種多樣:

1.使用Ubuntu Linux測試Linux驅動

2.在Android模擬器上通過原(Native) C 程式測試Linux驅動

3.使用Android NDK 測試Linux驅動

4.使用Java代碼直接操作裝置檔案來測試Linux 驅動

5.使用開發板測試Linux驅動:

   在開發板上使用可執行程式測試Linux驅動

   在開發板上使用.Android NDK測試Linux驅動

   在開發板上使用Java代碼測試Linux驅動

6.將驅動編譯進Linux核心進行測試

   第1步:將源檔案檔案放入Linux核心原始碼

   第2步:修改Kconfig檔案

   第3步:修改Makefile檔案

   第4步:設定.config檔案

   第5步:編譯Linux核心

使用Eclipse開發與測試Linux驅動程式

第1步:建立C工程

第2步:建立C原始碼檔案連結

第3步:設定include路徑

第4步:編譯Linux驅動

安裝了 CDT 外掛程式後, Eclipse 不僅可以開發 Java 程式, 也可以開發普通的 C/C++程式。使用Eclipse 開發C/C++程式是一個好主意。 因為可以帶來很多好處,如高亮顯示代碼、 格式化代碼、 跟蹤代碼、Content Assist 列表、調試代碼等。

統計單詞數的word_count驅動是本書實現的第一個完整的Linux驅動。 雖然word_count驅動的功能並不複雜, 但足以讓以前從來接觸過Linux驅動的開發人員瞭解Linux驅動的完整開發過程。本章不僅僅是介紹一個樣本, 還介紹了如何使用不同的方法測試Linux驅動。 這些方法主要以平台來區分。 例如, 可以直接使用UbuntuLinux測試Linux驅動。 有很多驅動只要再利用相應的Linux核心編譯一遍, 就可以直接安裝在Android、Linux等嵌入式系統中。當然, 也可以直 接在Android模擬器、 開發板甚至手機上測試Linux驅動。

對於Linux驅動的開發,關鍵在於要勤於動手、重在實踐。通過動手才能有所提高。

  

 

 

 

 

 

 

 

 http://www.cnblogs.com/Mr-zsj/

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

    

 

《Android深度探索》(卷1)HAL與驅動開發讀後感

聯繫我們

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