虚拟机和OS的安装
- 虚拟机平台我选择的是VMWare
- 优点:功能较全(可以复制粘贴,拖拽文件等等)
- 缺点:相比于VirtualBox,确实臃肿了一点,大家自己权衡
- OS的话我选择的是CentOS7(x86_64)的iso
【以上都在官网淦就行,没什么难的】
yum安装配置环境依赖
- CentOS用的是yum,Ubuntu用的是apt-get
sudo yum -y install gcc
sudo yum -y install gtk2 gtk2-devel
sudo yum -y install libXt libXt-devel
sudo yum -y install libXpm libXpm-devel
sudo yum -y install SDL SDL-devel
sudo yum -y install libXrandr-devel.x86_64
sudo yum -y install xorg-x11-server-devel
(这里-y
的意思是默认选择yes,不然你安装时要手动输入y
)
- 你也可以试着下下来后自己make,看报错,缺什么补什么,当然想科比也彳亍
bochs的安装
-
解压bochs
tar zxvf bochs-2.6.2.tar.gz
- 进入解压后的目录,配置Makefile(在此目录下复制以下内容,回车就行)
./configure \
--prefix=/home/qizong007/bochs \
--enable-debugger \
--enable-disasm \
--enable-iodebug \
--enable-x86-debugger \
--with-x \
--with-x11 \
LDFLAGS='-pthread' \
LIBS='-lX11'
!!!注意,这里prefix是安装路径,/home/qizong007
是我的根目录,你们要换成你们自己的!!!而bochs是我自己在根目录下创建的文件夹
(下文出现的/home/qizong007
都要换成你们自己的根目录)
- 成功后会生成Makefile,这时候我们就可以:
make
- 正常编译后:
make install
- 没问题后进入bochs安装目录下,创建bochsrc.disk,模拟bochs的BIOS(文件内容如下)
megs: 32
romimage: file=/home/qizong007/bochs/share/bochs/BIOS-bochs-latest
vgaromimage: file=/home/qizong007/bochs/share/bochs/VGABIOS-lgpl-latest
boot: disk
log: bochs.out
mouse: enabled=0
keyboard_mapping: enable=1, map=/home/qizong007/bochs/share/bochs/keymaps/x11-pc-us.map
ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
ata0-master: type=disk, path="hd60M.img", mode=flat, cylinders=121, heads=16, spt=63
#gdbstub: enabled=0, port=1234, text_base=0, data_base=0, bss_base=0
(具体为什么,自己看书,书上写的很清楚;为什么最后一行注释掉了,因为我们前面配置Makefile的时候,设定了--enable-debugger
,这两个东西是互斥的)
- 模拟硬盘
bin/bximage -hd -mode="flat" -size=60 -q hd60M.img
(具体含义看书)
- 运行(也可以按照书上,我这样是直接打开)
bin/bochs -f bochsrc.disk
- 接下来模拟器出来黑屏,你以为卡住、死机了,并没有!!!这是debug模式,打了断点的,这时候你只要在终端敲下:(也就是
continue
)
c
结果就和书上一样辽~(别怀疑自己,就是一个PANIC错误,是我们后需要修复的!看书就明白了!)
最后
-
如果安装过程还有什么疑问的话,可以在评论区和我讨论
-
刚读完这本书第0章、第1章,感觉写的非常对我口味,特别第0章回答了我很多疑问,郑钢NB!