1.预备安装
sudo apt-get install bulid-essential
sudo apt-get install xorg-dev
sudo apt-get install bison
sudo apt-get install gcc libc6-dev
sudo apt-get install libgtk2.0-dev //2011.6.11补充
2.安装bochs
官方网站下载源码包bochs-2.4.2.tar.gz
解压此文件:tar vxzf bochs-2.4.2.tar.gz
cd bochs-2.4.2
./configure --enable-debugger --enable-disasm
make
sudo make install
3.配置bochs
拷贝一个操作系统的实现附带光盘chapter1/a所有文件到/home/vdr
修改boshsrc:
#romimage: file=/usr/local/share/bochs/BIOS-bochs-latest
romimage: file=$BXSHARE/BIOS-bochs-latest
#vgaromimage: /usr/local/share/vgabios/vgabios.bin
vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest
# enable key mapping, using US layout as default.
#keyboard_mapping: enabled=1, map=/usr/share/bochs/keymaps/x11-pc-us.map
keyboard_mapping: enabled=1, map=$BXSHARE/keymaps/x11-pc-us.map
(否则提示:cannot stat keymap file)
4.运行测试
在a文件夹所在位置:bochs -f bochsrc
选择6
再按c键
补充 2011.6.11
****bochs常用命令调试信息****
b addr
info break
c, s, n
info cpu/r/fp/sreg/creg
print-stack
查看内存物理地址 xp /nuf addr
查看线性地址 x /nuf addr
反汇编一段内存 u start end
反汇编每条指令 trace-on
每执行一条指令就打印CPU信息 trace-reg
***关于mnt/floppy的问题***
lsmod | grep floppy
modprobe floppy
mkdir /mnt/floppy
修改/etc/fstab
/dev/fd0 /mnt/floppy ext2 user,noauto 0 0
或者
/dev/fd0 /mnt/floppy vfat user,noauto 0 0