Android深度探索HAL與驅動開發-——第10章

來源:互聯網
上載者:User

標籤:

    本章主要講Linux調試技術。列印核心調試資訊:printk,printk函數運行在核心空間,linux核心程式只能使用printk函數輸出調試資訊。printk檔案由一個4個數字組成文字檔。6:將訊息輸出到控制台的層級。4:預設的訊息記錄層級。1:控制台記錄層級可被設定的最小值。7:控制台記錄層級的預設值。

    在不想使用prink輸出訊息時,還需要瞭解可變參數的宏和do while。通過虛擬檔案系統進行資料互動:在 Linux檔案系統中/proc被用來作為核心空間與使用者空間進行資料互動的工具。/proc檔案系統和/dev檔案系統一樣,需要設定訪問檔案的動作處理函數。而/proc檔案系統主要通過  proc_dir_entry.read_proc和proc_dir_entry.read_write函數指標來設定讀寫處理函數。
    調試工具:gdb、gdbserver和調試核心空間程式的kgdb。gdb可跟蹤調試使用者空間的程式。quit用於退出gdb調試介面;list用於列出程式中的代碼。用gdbserver遠端偵錯使用者空間程式,是一個可以運行在ARM架構上的服務端程式。首先進入Android模擬器的終端,然後進入data/local目錄。Android模擬器只能通過連接埠映射方式使用gdbserver偵錯工具。
    用kgdb遠端偵錯核心程式,kgdb除了提供類似prink函數的日誌輸出功能,還讓開發人員在pc上連結目標裝置。kgdb包含兩部分:kgdb核心和一套連結介面,支援串口tty裝置串連和乙太網路串連。用kgdb調試Linux核心前需要先配置Linux核心和設定核心參數,使用make menuconfig命令進Linux核心配置菜單中。

 

Android深度探索HAL與驅動開發-——第10章

聯繫我們

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