日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

virtualbox调试linux内核,virtualbox+kgdbt调试linux内核

發布時間:2025/3/20 54 豆豆
生活随笔 收集整理的這篇文章主要介紹了 virtualbox调试linux内核,virtualbox+kgdbt调试linux内核 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

參考http://blog.csdn.net/zr_lang/article/details/8107015

環境需求:

兩臺linux虛擬機,我這里用的virtualbox安裝的ubuntu12.04系統,內核版本3.2

其中1臺虛擬機作為開發機virtualpc,另一臺則作為被調試機target

過程:

由于不會對下載來的內核源碼進行準確的編譯配置,一般下載的源碼編譯安裝后無法引導,提示缺少相關模塊,這就是由于模塊配置的原因無法進入新裝內核系統,而不同版本之間的配置文件又無法通用

不過在查看原系統配置文件的時候發現這個直接安裝的系統居然已經配置了所需的KGDB選項(雖然不知道一般的發行版為什么會默認配置這個.....)

這樣就好辦了根本不需要重新編譯安裝新內核,只要在當前可用內核中添加kgdb啟動參數就能等待調試了,于是在target中sudo apt-get install linux-image-3.2.0-51-generic-pae,在grub.cfg中copy出一個新的3.2.51內核的啟動項,然后在啟動參數后添加kgdboc=ttyS0,115200 kgdbwait。

然后在www.kernel.org下載了3.2.0-51版本的內核,make bzImage后獲得調試需要的vmlinux內核文件。

同時設置啟用兩臺虛擬機的串口COM1,端口模式為主機管道,輸入相同的管道文件路徑,并在virtualpc中勾選創建通道。

首先啟動virtualpc開發機,將下載編譯了的內核源代碼復制或共享到開發機中,啟動target調試機選擇新的kgdb調試選單,會出現等待遠程調試連接的提示,這時候就能使用我們的gdb來調試內核了,gdb的簡單UI版gdbtui或者cgdb也可以使用,調試起來更加直觀。這里使用了cgdb,首先:

cd到源碼根目錄

cgdb? vmlinux

set remotebaud 115200

target remote /dev/ttyS0

之后就會出現內核源碼并能夠開始真正的調試工作,同時可以觀察target的變化。

經測試上面鏈接中的用主機gdb在set remotebaud 115200后用target remote |?socat ?stdio ?unix-connect:/tmp/vbox來連接管道調試虛擬機可行。看來主機調試虛擬機是完全沒問題地!~

貼上調試效果:

總結

以上是生活随笔為你收集整理的virtualbox调试linux内核,virtualbox+kgdbt调试linux内核的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。