NASM下載:http://www.nasm.us/pub/nasm/releasebuilds/?C=M;O=D
解壓:tar zxvf nasm-2.12.02.tar.gz
進入剛解壓的目錄
然後執行命令:./configure
make
sudo make install
bochs下載:https://sourceforge.net/projects/bochs/files/bochs/2.6.8/
解壓:tar zxvf bochs-2.6.8.tar.gz
進入剛解壓的目錄
然後執行命令:./configure \
--prefix=/your_path/bochs \ 指定安裝目錄
--enable-debugger \
打開bochs自己的調試器
--enable-disasm
\ 使bochs支持反彙編
--enable-iodebug
\ 啓用io接口調試器
--enable-x86-debugger
\ 支持x86調試器
--with-x
\ 使用x windows
--with-x11
\ 使用x11圖形用戶接口
make
sudo make install
如果想用GDB調試,將--enable-debugger改爲--enable-gdb-stub
運行bochs:
安裝路徑中輸入 bin/bochs
按回車載入配置文件 bochsrc.disk啓動時直接載入: bin/bochs -f bochsrc.disk
創建虛擬硬盤工具:bin/bximage
NASM簡單用法:
nasm -f 指定輸出文件的格式
nasm -o指定輸出可執行文件的名稱
編譯mbr:nasm -o mbr.bin mbr.S
Linux磁盤操作命令dd:
if=FILE 此項指定要讀取的文件
of=FILE 此項指定把數據輸出到哪個文件
bs=BYTES 此項指定塊的大小 dd是以塊的單位來進行IO操作的
count=BLOCKS 此項指定拷貝的塊數
seek=BLOCKS 此項指定把塊輸出到文件時想要跳過多少塊
conv=CONVS 此項指定如何轉換文件 追加數據時使用notrunc方式
將mbr寫入硬盤:
dd if=/your_path/mbr.bin of=/your_path/bochs/hd60M.img bs=512 count=1 conv=notrunc