使用vmware+dos加载软驱内的自制操作系统


在orange’s一个操作系统的实现里面用dos加载了自己的boot.com文件来拉起自己的操作系统。原书中是使用bochs来加载的,但是我一般经常用的是vmware,在这里记录一下方法。

 

1.首先创建一个虚拟机

使用vmware+dos加载软驱内的自制操作系统

 

 选择典型

使用vmware+dos加载软驱内的自制操作系统

 

 稍后安装操作系统

使用vmware+dos加载软驱内的自制操作系统

 

 操作系统和版本都选择其他

使用vmware+dos加载软驱内的自制操作系统

 

 

 名字和虚拟机路径随意

使用vmware+dos加载软驱内的自制操作系统

 

 最大磁盘大小不用给太多,因为测试用的自制操作系统也暂时没那么大。下面储存为单个文件或是多个文件均可

使用vmware+dos加载软驱内的自制操作系统

 

 最后点击完成,虚拟机就创建完毕了

2.安装ms-dos

现在打开这个虚拟机的话,会显示operating system not found,这是显然的因为咱们没还没给这个虚拟机安装操作系统。

正如前面所说的,正常的引导区只有512字节,所以咱们现在要安装msdos来靠这个操作系统来运行我们的操作系统

首先下载一个ms-dos的安装光盘镜像,这个上网搜一下msdos光盘镜像就会有网站下载,文件结尾应当是一个.iso的文件

之后,在这个页面:

使用vmware+dos加载软驱内的自制操作系统

 

 点击CD/DVD(IDE)

使用vmware+dos加载软驱内的自制操作系统

 

 点击选中右边的使用ISO映像文件,并浏览设置文件路径为你刚刚下载的光盘映像的文件路径,并点击最下面的确定

使用vmware+dos加载软驱内的自制操作系统

 

 再次开启虚拟机,看到如下页面,输入1并enter开始安装ms-dos

使用vmware+dos加载软驱内的自制操作系统

 

 一路yes/continue,来到这个页面,点击create a fat32/16/12 primary partition,之后点击出现的reboot now

reboot完成之后会出现invalid system disk,这是正常现象。原因是咱们现在默认是从硬盘启动的,但是咱们要从光盘启动,只要将启动方式改变为从光盘启动就行了,只需要如下操作:

使用vmware+dos加载软驱内的自制操作系统

 

 找到打开电源时进入固件,点击并重新开机

使用vmware+dos加载软驱内的自制操作系统

 

 来到Boot页面,并将CD-Rom drive 移动到最上方。shift+可以向上移动一项

Fn + F10save and exit,并按enter选中yes确定退出

使用vmware+dos加载软驱内的自制操作系统

 

 再次选中安装msdos,一路next/continue/Yes直到遇到下面选项

使用vmware+dos加载软驱内的自制操作系统

 

 这里选择No,只要是关于add-on的全部选择No就行

使用vmware+dos加载软驱内的自制操作系统

 

 这里需要选择dont load,否则会导致unrecoverable privilaged operation error,如果这里一不小心点错了最后我会告诉你怎么补救

后面又是一堆Next/OK, 还会有一个选项点击Load both即可

使用vmware+dos加载软驱内的自制操作系统

 

 关闭虚拟机,再次来到这个页面,取消勾选右上角的启动时连接,否则每次开机都会试图重新安装msdos

使用vmware+dos加载软驱内的自制操作系统

 

 再次开机,正常情况下你应该能看到这个页面了,说明msdos安装完成

3.加载软盘

使用vmware+dos加载软驱内的自制操作系统

 

 点击左侧编辑虚拟机设置来到这个页面,点击下方的添加

使用vmware+dos加载软驱内的自制操作系统

 

选择软盘驱动器,点击完成

使用vmware+dos加载软驱内的自制操作系统

 

 

 按照orange’s 一个操作系统的实现书中的做法,应该可以得到一个pm.img软盘映像文件,这个文件中应当有你的操作系统,类似boot.com文件这样的东西。这个软盘映像文件可以是你在其他地方,如用bximage创建出来的,也可以点击创建用vmware创建一个软盘映像文件。在这里把路径选择为.img软盘映像文件的路径。注意要取消勾选启动时连接,因为系统检测到软盘的话会试图从软盘中找操作系统,但是咱们的软盘里现在不是一个完整的操作系统,只是一个com二进制文件。

使用vmware+dos加载软驱内的自制操作系统

 

 打开虚拟机,在进入msdos系统后打开虚拟机设置,设备状态勾选上已连接,这样的话就相当于有个软盘连接上了虚拟机

使用vmware+dos加载软驱内的自制操作系统

 

 输入A:可以切换到A盘符也就是我这边的软盘,dir查看软盘中的内容,发现了我的boot.com文件

使用vmware+dos加载软驱内的自制操作系统

 

 boot.com执行结果,一切正常!

 

附录:

unrecoverable privilaged operation error的解决办法

如果你运行boot.com发现出现了上述错误,说明你安装了ems386,请参考这篇博客解决:

(40条消息) 自己动手写操作系统–几个问题_robbie1314的博客-CSDN博客

 

原创文章,作者:jamestackk,如若转载,请注明出处:https://blog.ytso.com/tech/aiops/268266.html

(0)
上一篇 2022年6月19日 05:05
下一篇 2022年6月19日 05:09

相关推荐

发表回复

登录后才能评论