2021-06-08-30天自制操作系统-01

工具准备:
https://sourceforge.net/projects/bochs/
download 2.6.11
https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/win64/
download 2.15.05
http://www.x-ways.net/winhex/
http://www.winimage.com/download.htm

30天自制操作系统-01
https://weread.qq.com/web/reader/38732220718ff5cf3877215k9bf32f301f9bf31c7ff0a60
第1天 从计算机结构到汇编程序入门
与其啰啰嗦嗦地写上一大堆,还不如实际动手开发来得轻松,我们这就开始吧。而且我们一上来就完全抛开前面的说明,既不用C语言,也不用汇编程序,而是采用一个迥然不同的工具来进行开发(笑)。
有一种工具软件名为“二进制编辑器”(Binary Editor)[插图],是一种能够直接对二进制数进行编辑的软件。我们现在要用它来编辑出下图这样的文件。
也许有人会说“这样的工具我从来没有见过呀”,没关系,下面我们来详细地介绍一下。首先打开下面这个网页:
https://www.vcraft.jp/soft/bz.html
用这个软件输入二进制,512字节比较累,改为二进制编辑工具WinHex64生成机器代码
(a)首先新建一个二进制文件,大小设置为:1474560B=1440*1024B,这就是俗称的1.44MB软盘容量(严格意义上讲不是1.44MB,而是1474560/(1024*1024)=1.40MB)。

最终发现是评估版,只能保存200K大小的文件,放弃。直接使用书中推荐的bz软件
在二进制文件头部输入以下代码:

(b)二进制文件头中间部分输入以下代码,位置在512字节处:
很明显,这是保障第一扇区的最后两个字节值为:0x55和0xAA。
哦,对了,差点忘记一件重要的事——在地址0001F0和001400附近还有些地方不全是00,要像下图那样把它们也改过来,然后整体检查一下,确认没有输入错误。

( c ) 其余部分全部用0来填充,有100多万个字节哟,如果是人工来做是要死人的。幸好,WinHex64这个工具在新建的时候,会默认将所有部分自动填充成0,因此这部分工作我们就可以省掉了。这就是计算机应用程序厉害的地方,可以为我们提供太大的帮助。但应用程序也是靠操作系统支撑的,所以,我们能体会到操作系统的伟大!

最后,将文件保存为镜像文件:helloos.img。

启动bochs:

启动qemu效果相同:


 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值