使用 Bochs 调试操作系统
生活随笔
收集整理的這篇文章主要介紹了
使用 Bochs 调试操作系统
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
編譯安裝 Bochs
- 下載 bochs 源碼
http://sourceforge.net/projects/bochs/files/bochs/2.6.8/
- 解壓之后進(jìn)入該目錄,進(jìn)行配置
sudo ./configure --enable-debugger --enable-disasm
- 編譯安裝
sudo make
sudo make install
這時(shí),bochs 就編譯安裝完成了,接下來(lái)我們繼續(xù)使用上一篇文章中所使用的軟盤映像。
用 Bochs 調(diào)試操作系統(tǒng)
啟動(dòng)帶有調(diào)試的 bochs 之后,我們會(huì)看到bochs 會(huì)進(jìn)入一個(gè)選項(xiàng)界面,我們選擇『6.Begin simulation』就可以開(kāi)始調(diào)試了
部分 Bochs 調(diào)試指令
| 在某物理地址設(shè)置斷點(diǎn) | b addr | b 0x7c00 |
| 顯示當(dāng)前所有斷點(diǎn)信息 | info break | info break |
| 繼續(xù)執(zhí)行,直至遇到斷點(diǎn) | c | c |
| 單步執(zhí)行 | s | s |
| 單步執(zhí)行(遇到函數(shù)跳過(guò)) | n | n |
| 查看寄存器信息 | info cpu r fp sreg creg | info cpu r fp sreg cre |
| 查看堆棧 | print-stack | print-stack |
| 查看內(nèi)存物理地址內(nèi)容 | xp /nuf addr | xp /40bx 0x9013e |
| 查看線性地址內(nèi)容 | x /nuf addr | x /40bx 0x13e |
| 反匯編一段內(nèi)存 | u start end | u 0x30400 0x3040d |
| 反匯編執(zhí)行的每一條指令 | trace-on | trace-on |
| 每執(zhí)行一條指令就打印 CPU 信息 | trace-reg | trace-reg |
- 我們可以使用 help 來(lái)查看調(diào)試幫助
舉例
采用上一篇文章中的鏡像來(lái)進(jìn)行調(diào)試
總結(jié)
以上是生活随笔為你收集整理的使用 Bochs 调试操作系统的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Bochs调试指令
- 下一篇: 《一个操作系统的实现》——pmtest1