麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 服務器 > Linux服務器 > 正文

Linux內核設備驅動之內核的調試技術筆記整理

2024-09-05 23:05:27
字體:
來源:轉載
供稿:網友
/****************** * 內核的調試技術 ******************/

(1)內核源代碼中的一些與調試相關的配置選項

內核的配置選項中包含了一些與內核調試相關的選項,都集中在"kernel hacking"菜單中。包括:

CONFIG_DEBUG_KERNEL

使其他的調試選項可用,應該選中,其本身不會打開所有的調試功能。

具體的調試選項說明可參見驅動一書,或通過menuconfig的help說明查看。

(2)如何通過宏對printk調試語句進行全局控制

通過和Makefile配合,可以在c文件中定義屬于我們自己的調試語句。

(3)strace的使用

strace可以跟蹤由用戶空間程序所發出的所有系統調用。有用的參數有:

  • -t  顯示調用發生的時間
  • -T  顯式調用所花費的時間
  • -e  限定被跟蹤的系統調用類型,如"-e execve"
  • -f  跟蹤所有子進程
  • -p  跟蹤特定進程。如"-p 8856"
  • -o  將輸出的信息導入特定的文件

strace對于發現系統調用時的細微錯誤非常有用,尤其是針對多進程的程序,可以通過strace輸出的返回值和進程pid獲得大量有用信息。如:

$>strace -o zht.txt -f ./process_create

(4)ltrace的使用

ltrace可以跟蹤由用戶空間程序所發出的所有動態庫函數調用。有用的參數有:

  • -t  顯示調用發生的時間
  • -T  顯式調用所花費的時間
  • -f  跟蹤所有子進程
  • -p  跟蹤特定進程
  • -o  將輸出的信息導入特定的文件

(5)查看oops消息

oops是內核告知用戶有不幸發生的最常用方式。通常,發送完oops后,內核會處于一種不穩定狀態。

在某些情況下,oops會導致內核混亂,而混亂的結果就是死機,這些情況可能包括:

  • *oops發生在持有鎖的代碼中
  • *oops發生在和硬件設備通訊的過程中
  • *oops在中斷上下文中發生
  • *oops發生在idle進程(0)或init進程(1),因為內核沒有這兩個進程沒法工作

如果oops在其他進程運行時發生,內核會殺死該進程并嘗試著繼續運行。oops的產生有很多原因,包括內存訪問越界或非法指令等。

oops包含的最重要訊息是寄存器上下文和回溯線索(call trace)可以人為引起oops,如:

if(bad_thing) BUG();//或 BUG_ON(bad_thing);

可以用panic()引發更嚴重的錯誤,調用panic()不但會打印錯誤信息,還會掛起整個系統。只有在極端惡劣的情況下才會使用:

if(terrible_thing) panic("foo is %ld!/n", foo);

有些時候,只要打印一下棧信息就可以幫助測試,如dump_stack():

 if(!debug_check){  printk(KERNEL_DEBUG "provide some info/n");  dump_stack(); }

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到服務器教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 久久九九热re6这里有精品 | 一色视频 | 一级黄色淫片 | 日本免费中文字幕 | 欧美一级免费在线观看 | 日本aⅴ在线 | 成人区精品一区二区婷婷 | 久久伊人国产精品 | 精品国产欧美一区二区 | videos韩国| 国产欧美精品一区二区三区四区 | 看国产毛片| hd极品free性xxx护士人 | 黄污在线观看 | 欧洲成人一区 | 在线高清中文字幕 | 精品国产一区二区亚洲人成毛片 | 羞羞视频免费网站含羞草 | 嫩嫩的freehdxxx | 国产高潮好爽好大受不了了 | 成年人高清视频在线观看 | 精国品产一区二区三区有限公司 | 日韩字幕 | 九九精品久久 | 久久精品re | 国产精品一区在线免费观看 | 露脸各种姿势啪啪的清纯美女 | 久草热久草视频 | 亚洲精品aⅴ中文字幕乱码 欧美囗交 | 免费a观看 | 黄网站免费观看视频 | 欧美一级免费在线观看 | 一级黄色片武则天 | 国产精品久久久久久婷婷天堂 | 视频一区免费观看 | 精品在线观看一区 | 欧美女人天堂 | 国产精品成人久久久久a级 欧美特黄一级高清免费的香蕉 | 99re热精品视频 | 免费小毛片 | 久久嗨|