装了个虚拟机跑实验,选择bochs2.6.2,在官网找不到该文件,废了九牛二虎之力才弄到手,bochs2.6.2下载地址:http://download.csdn.net/detail/u010066564/7361487
不过2.6安装并不顺利。过程如下;
在未安装之前先做些准备:
sudoapt-get install build-essential
sudoapt-get install xorg-dev
sudoapt-get install bison
sudoapt-get install libgtk2.0-dev
然后你就可以这样做了:
cd bochs-2.6.2
./configure --enable-debugger --enable-disasm
make
这时你肯定会出现这样的错误提示:
/usr/bin/ld: gui/libgui.a(gtk_enh_dbg_osdep.o): undefined reference tosymbol 'pthread_create@@GLIBC_2.1'
/usr/bin/ld: note: 'pthread_create@@GLIBC_2.1' is defined in DSO/lib/libpthread.so.0 so try adding it to the linker command line
/lib/libpthread.so.0: could not read symbols: Invalid operation
collect2: error: ld returned 1 exit status
make: *** [bochs] Error 1
sudo vim Makefile,
找到 LIBS=。。。一行,在这一行最后面添加 -lpthread
这时你再次
make,(注意不用再./configure .....了)
sudo make installbochs安装ok
boot.asm文件:http://download.csdn.net/detail/u010066564/7362937
编译该文件:nasm boot.asm -o boot.bin (没有nasm工具则:sudo apt-get install nasm)
创建软盘映像:bximage
将引导扇区写入软盘:dd if=boot.bin of=a.img bs=512 count=1 conv=notrunc
bochsrc文件:http://download.csdn.net/detail/u010066564/7362927
然后输入bochs -f bochsrc,显示如下图:
输入6火车,弹出模拟器:
在<bochs:1>提示符后输入c,就可看到Hello,OS World!了。