《自己动手写操作系统》第二章——Bochs调试及相关仿真工具的使用方法


关键词: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页

你可能感兴趣的:(bochs,自己动手写操作系统)