第十章 心得体会
通過第十章的學習,了解了在嵌入式Linux驅動開發中的調試技術已經調試工具。
學到的知識:
一、打印內核調試信息:printk
printk函數的原型如下:
asmlinkage int printk(const char * fmt, ... )
printk文件是一個簡單的有4個數字組成的文本文件,該文件的默認值如下:6 4 1 7
6:將消息輸出到控制臺的級別。
4:默認的消息日志級別。
1:控制臺日志級別可被設置的最小值
7:控制臺日志級別的默認值.
二、防止printk函數降低Linux驅動性能
1.可變參數的宏
2.do{...}while(O)
三、通過虛擬文件系統進行數據交互 ?
proc_mkdir
name: 虛擬目錄名稱。
parent: 虛擬目錄父目錄的 proc_dir_entry結構體指針。
create_proc_enttry
name: 虛擬文件名稱。
mode: 虛擬文件的訪問權限
parent: 虛擬文件父目錄的 proc_dir_entry 結構體指針。
create_proc_read_entty
name:虛擬文件名稱。
mode:虛擬文件的訪問權限
base:虛擬文件父目錄的proc_dir_entry結構體指針。
read_proc:處理讀動作的函數指針。
data:用于虛擬文件系統的數據。
remove_proc_entry
name:要刪除的虛擬文件的名稱。
parent:虛擬文件父目錄的proc_dir_entry結構體指針。
四、調試工具
1.用gdb調試用戶空間程序
2.用gdbserver遠程調試用戶空間程序
3.用kgdb遠程調試內核程序
轉載于:https://www.cnblogs.com/chen-yang/p/5638388.html
總結
- 上一篇: 团体程序设计天梯赛-练习集L1-007.
- 下一篇: Appium查找元素