《Orange's 一个操作系统的实现》第一、二章(搭建工作环境ubuntu16.04LTS+bochs2.6.11)

搭建工作环境:ubuntu16.04LTS+bochs2.6.11

1、ubuntu16.04LTS

下载链接:官网,不能访问者请点这里。
安装过程:略。
注意:请配置国内的源。

2、bochs2.6.11

下载链接:官网,不能访问者请点这里。
安装过程:

tar xzvf bochs-2.6.11-tar.gz
cd bochs-2.6.11
./configure --enable-debugger
sudo make
sudo make install

注意:
执行sudo make时报错:
ERROR: X windows gui was selected, but X windows libraries were not found
请执行以下命令:

sudo apt-get install build-essential
sudo apt-get install libx11-dev 
sudo apt-get install xserver-xorg-dev 
sudo apt-get install xorg-dev

3、使用bximage创建软盘映像

bximage

4、将引导扇区写进软盘中

dd if=boot.bin of=a.img bs=512 count=1 conv=notrunc

5、Bochs配置

和书中的不一样!

############################
# Configurate filefor Bochs#
############################
 
# how much memorythe emulated machine will have
megs: 32
 
# filename of ROMimages
romimage:file=/usr/local/share/bochs/BIOS-bochs-latest
vgaromimage:file=/usr/local/share/bochs/VGABIOS-lgpl-latest
 
# what disk imageswill be used
floppya:1_44=a.img, status=inserted
 
# choose the bootdisk.
boot: floppy
 
# where do we sendlog messages?
log: bochsout.txt
 
# disable themouse
mouse: enabled=0
 
# enable keymapping, using Us layout as default
keyboard:keymap=/usr/local/share/bochs/keymaps/x11-pc-us.map

至此,准备工作完成,当前工作目录下应有如下文件:
a.img bochsrc boot.asm boot.bin

6、运行测试

bochs -f bochsrc

结果如下:
《Orange's 一个操作系统的实现》第一、二章(搭建工作环境ubuntu16.04LTS+bochs2.6.11)_第1张图片
注意:如果黑屏则是bochs进入调试状态,终端输入c即可,详情见书2.1.4。

附录:官方代码

你可能感兴趣的:(《Orange,S:一个操作系统的实现》)