1 Day:部署工作环境

前言:磨刀不误砍柴功,本天我们需搭好,操作系统开发的环境,采用的开发语言是C语言和汇编语言,具体详细的内容请看博客。

本日开发参考以下资料:
《操作系统真象还原》

  • C语言编译器:GCC
  • 汇编语言编译器:NASM
  • 虚拟机:vmware

vmware安装教程

  • 虚拟机系统:Linux(因为书上说用linux)

kail linux 镜像文件(随便分享一个) 密码 tmll

  • 虚拟机里面跑的虚拟机:bochs

一,安装bochs(地雷坑来了)

再次之前我们需要先安装一个Linux虚拟机,如果你实在嫌麻烦,那就windows上面跑吧,windows和下面linux教程同理,大家改改配置文件路径即可
boches.exe 链接密码:tmllhttps://pan.baidu.com/s/1LUekJt4copMmpevuD1CoHw

方法一,直接安装

sudo apt-get install bochs #可以直接安装bochs

方法二,下载压缩文件,解压自编译安装(坑比较多,这个地方太心累了,有兴趣的可以自己搞)

下载压缩文件,自编译安装

bochs压缩包下载

安装好后,请注意以下几个文件夹(自编译的不同)

/usr/share/doc/bochs   在该文件夹下应该放有bochsrc-sample.txt 即基础配置样例

/usr/share/bochs 即主要bochs文件

接下来我们来编写配置文件

一些配置的解释

# 设置虚拟机内存为32MB
megs: 32
# 设置BIOS镜像
romimage: file=$BXSHARE/BIOS-bochs-latest 
# 设置VGA BIOS镜像
vgaromimage: file=$BXSHARE/VGABIOS-lgpl-latest
# 设置从硬盘启动
boot: disk
# 设置日志文件
log: bochsout.txt
# 关闭鼠标
mouse: enabled=0
# 打开键盘
keyboard: type=mf, serial_delay=250
# 设置硬盘
ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
# 添加gdb远程调试支持
gdbstub: enabled=1, port=1234, text_base=0, data_base=0, bss_base=0

我的配置 

megs: 32 
 #注意 /usr/share/bochs/  是我的安装路径,如果你和我的不同,请更改路径,以下所有路径同理
romimage: file=/usr/share/bochs/BIOS-bochs-latest          
vgaromimage : file=/usr/share/bochs/VGABIOS-lgpl-latest


boot: disk 

log: bochs.out 

mouse: enabled=0 
keyboard:keymap=/usr/share/bochs/keymaps/x11-pc-us.map

ata0: enabled=1, ioaddr1=0x1f0, ioaddr2=0x3f0, irq=14
#这里path代表要读的你写的操作系统文件路径在哪,没有也可以写上
ata0-master: type=disk, path="/usr/share/geniusos.img", mode=flat, cylinders=121, heads=16, spt=63

gdbstub: enabled=1, port=1234, text_base=0, data_base=0, bss_base=0
  • 把他保存为随意名字即可,我的名字叫做 bochsrc.disk,然后存放在你的安装目录 /usr/share/bochs(我的)下即可

  • 输入bochs即可启动,默认输入2即可 (如果你不是默认的配置文件,一开始会不知道你配置文件,然后询问是否寻找配置文件)

  • 接下来输入你的配置名字即可

  • 如果接下来提示的不是【6】,那就代表你的配置文件可能有语法错误,看看是不是路径错误了,如果是【6】的话恭喜你,文件编译成功了,但是也许会有一些坑,如果没有坑且有以下画面说明你成功了

二,一些坑

  • Bochs is not compiled with gdbstub support

把gdbstub那行去掉或者注释掉即可

  • no alternative display libraries are available

sudo apt-get install bochs-x  #安装该模块即可

三,明日预告

我们启动后会发现,他说我们没有xxx.img,我们应该要写个.img镜像文件,所以明天开始我们就要来写MBR引导记录,了解计算机到底是怎么启动的捏,想想就有点激动,现在比较晚了,还是先洗洗睡吧。

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值