為了學習《orange's 乙個作業系統的實現》,先要準備好環境。
準備工作,安裝bochs依賴的軟體:
sudo apt-get install build-essential
sudo apt-get install xorg-dev
sudo apt-get install bison
2. 解壓 tar vxzf bochs-2.4.5.tar.gz
3. 配置 ./configure --enable-debugger --enable-disasm --with-nogui
4. 編譯 make
5. cp bochs bochsdbg
避免安裝時錯誤
6. 真正開始安裝 sudo make install
7. 建立快捷方式 sudo ln -s /usr/local/bin/bochs /usr/bin/bochs
好了,安裝完畢,寫乙個簡單的bochsrc配置檔案,然後啟動bochs,
看是否能除錯boot.asm
~/study/boot.asm
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
org 07c00h
mov ax, cs
mov ds, ax
mov es, ax
call dispstr
jmp $
dispstr:
mov ax, bootmessage
mov bp, ax
mov cx, 16
mov ax, 01301h
mov bx, 000ch
mov dl, 0
int 10h
retbootmessage: db "hello os world!"
times 510 - ($-$$) db 0
dw 0xaa55
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
user1: ~/study/: nasm boot.asm -o boot.com
user1: ~/study/: dd if=boot.bin of=b.img bs=512 count=2880 conv=notrunc
user1: ~/study/: vi bochsrc
megs: 32
romimage:file=/usr/local/share/bochs/bios-bochs-latest
vgaromimage:file=/usr/share/vgabios/vgabios.bin
floppya: 1_44=a.img, status=inserted
boot: floppy
儲存 :wq
user1: ~/study/: bochs
執行bochs,出現 ,具有除錯功能的bochs已經啟動!
bochs 除錯Orange S系統的方法
閱讀于淵編寫的 orange s 乙個作業系統的實現 後面需要用gdb對c 進行除錯時,可以用gdb bochs的方法進行跟蹤除錯,具體方法如下 1 按照如下鏈結中提供的方式,重新編譯安裝bochs 2 在makefile檔案當中,在cflags後面加上 g選項,加入除錯所需的符號表,ldflags...
debian上bochs的安裝
跟著 作業系統真象還原 要安裝bochs,我傻乎乎地想跟書上一樣就好了.結果,大錯特錯,折騰了很久.報錯是這個 gtk gtk.h no such file or directory include沒有這個標頭檔案,網上搜出來,安裝 sudo apt get install libgtk2.0 de...
如何在ubuntu安裝帶除錯版本的bochs
剛用ubuntu不久,不是很熟悉 剛開始使用包管理命令安裝bochs,不帶除錯功能,剛開始也不知道,一直納悶如何進入除錯模式,想了一下,原來裝的是 不帶除錯功能的,安裝方式如下 上面有最新的安裝包,現在最新版本是2.4.2的 configure enable debugger enable disa...