一个操作系统的实现:第二篇——搭建你的工作环境

Bochs的安装:

DebianGNU/Linux或其近亲(比如Ubuntu),可以使用这样的命令:
sudo apt-get install vgabios bochs bochs-x bximage

源代码安装:

tar vxzf bochs-2.3.5.tar.gz
cd bochs-2.3.5
./configure --enable-debugger --enable-disasm
make
sudo make install

Bochs2.6.9配置:

一个操作系统的实现:第二篇——搭建你的工作环境_第1张图片

磁盘映像:Bochs组件中,就有一个工具叫做bximage,它不但可以生成虚拟软盘fd,还能生成虚拟硬盘hd。

写软盘操作:

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

 部分Bochs调试指令:

一个操作系统的实现:第二篇——搭建你的工作环境_第2张图片

开发环境:

如果你的主系统是Windows的话,可以使用VMware 安装Linux虚拟机,使用SecureCRT访问虚拟机,可以使用EditPlus访问Linux虚拟机中文件并修改保存。下一章使用的FreeDOS可以使用DOSBox替代。

一个操作系统的实现:第二篇——搭建你的工作环境_第3张图片

一个操作系统的实现:第二篇——搭建你的工作环境_第4张图片

一个操作系统的实现:第二篇——搭建你的工作环境_第5张图片

如果使用Bochs要按照以下步骤操作即可:
1. 到Bochs官方网站下载一个FreeDos。解压后将其中的a.img复制到我们的工作目录中,并改名为freedos.img。
2. 用bximage生成一个软盘映像,起名为pm.img。
3. 修改我们的bochsrc,确保其中有以下三行:
floppya: 1_44=freedos.img, status=inserted
floppyb: 1_44=pm.img, status=inserted
boot: a
4. 启动Bochs,待FreeDos启动完毕后格式化B:盘,如下图所示。
format b:

一个操作系统的实现:第二篇——搭建你的工作环境_第6张图片

5. 使用nasm编译程序生成.com:
▹ nasm pmtest1.asm -o pmtest1.com
6. 将pmtest1.com复制到虚拟软盘pm.img上:
▹ sudo mount -o loop pm.img /mnt/floppy
▹ sudo cp pmtest1.com /mnt/floppy/
▹ sudo umount /mnt/floppy
7. 到FreeDos中执行如下命令:
▹ B:\pmtest1.com

你可能感兴趣的:(一个操作系统的实现:第二篇——搭建你的工作环境)