我的工作环境在ubuntu下,所以搭建环境比较方便
这个借鉴了<<一个操作系统的实现>>
我把详细的过程记下了.
nasm
sudo apt-get install nasm
bochs
直接从源里安装的bochs是没有调试模式的,所以需要自己编译./configure --enable-debugger --enable-disasm make sudo make install
暂时只需要这两个就行了.
在bochs官网下一个freedos.img
用bximage制作一个软盘
- 选择Create new floppy or hard disk image(输入1)
- 选择制作软盘镜像(输入fd)
- 选择默认的1.44M(直接回车)
- 取名(随意,或者默认a.img 直接回车)
修改 bochsrc
floppya: 1_44=freedos.img, status=inserted floppyb: 1_44=a.img, status=inserted boot: a
- 格式化刚才创建的软盘镜像
- 启动bochsrc
- 进入dos系统
- 格式化b盘
format b:
- 退出
- 编译源码
注意:将org 07c00h改为0100h
编译为com文件在dos下运行 将com文件放入a.img
sudo mount a.img /mnt/floppy sudo cp a.com /mnt/floppy sudo umount /mnt/floppy
启动bochs,在dos环境中运行程序