关键词:bochs,自己动手写操作系统
一 安装具有调试功能的bochs
注意:安装bochs以后,常常发现bochs不能调试,原因如下:
$ sudo apt-get install vgabios bochs bochs-x bximage
敲入这样一行命令,不一会儿就装好了。缺点:没有调试功能的,这显然不能满足我们的需要,所以最好的方法还是从源代码安装.
首先下载最新版本到Bochs: http://bochs.sourceforge.net/getcurrent.html
下载的版本是bochs-2.4.6.tar.gz,那么安装过程差不多是这样的:
$ tar zxvf bochs-2.4.6.tar.gz
$ cd bochs-2.4.6.
$ ./configure --enable-debugger --enable-disasm
$ make
$ sudo make install
--enable-debugger 这个就是开启调试功能
二 安装好bochs以后,主要的工作流程如下
1.第一步:利用bximage生成硬盘或者软盘镜像
2.第二步:利用dd命令,将引导扇区内容(bin文件)写入软盘上面的软盘或者硬盘
3.编写bochsrc配置文件
#howmuch memory the emulated machine will have
megs:32
#finenameof ROM images(真实机器的BIOS和VGABIOS)
romimage:file=/usr/share/bochs/BIOS-bochs-latest
vgaromimage:file=/usr/share/vgabios/vgabios.bin
#whatdisk images will be used
floppya:1_44=a.img,status=inserted
#choosethe boot disk.
boot:floppy
#wheredo we send log messages?
log:bochsout.txt
#disablethe mouse
mouse:enabled=0
#enablekey mapping ,using us layout as default
#keyboard_mapping:enabled=1,map=/usr/share/bochs/keymaps/x11-pc-us.map
keyboard_mapping:enabled=1,map=/usr/share/bochs/keymaps/sdl-pc-us.map
4.启动boch
流程:读取bochsrc,加载img磁盘镜像,进行环境模拟,可以进行相关调试(类似于GDB),具体可以参考orange的第14页