30天自制操作系统-第01天
1.概述
这本书多年前就买了,但一直没看。本书特点浅显易懂,层层递进,实现的操作系统虽说是玩具,但五脏俱全,非常适合初学者,因为现有的很多操作系统教材,晦涩难懂,门槛很高,学习曲线陡峭,并且缺乏系统如何引导的环节,该书弥补了这些缺陷,为进一步学习操作系统做了良好的铺垫。
实验环境:Win10
2.随书源码(来自https://www.cnblogs.com/yucloud/p/10925938.html):
光盘中文翻译版:https://github.com/yourtion/30dayMakeOS.git
原版光盘(含iso文件):https://github.com/sky5454/30daysMakeOS-Origin-ISOfiles.git
原版光盘git版本:https://github.com/Tassandar/OSASK.git
3.目录\01_day\helloos0:
helloos.nas 汇编源文件(引导程序,并显示"hello.world",该文件的程序主体现在没有汇编代码,直接定义了机器指令)
asm.bat 一个 调用nask.exe编译汇编源文件的脚本,输出文件扩展名为img
!cons_nt.bat 在WinNT系统下打开命令行窗口的脚本(WinNT3.5及以上版本(Win2000、Winxp、Win7以上))
!cons_9x.bat 在Win98系统下打开命令行窗口的脚本(现在已经不用)
install.bat 把img写到软盘A的脚本(现在已经不用实际软盘,因此可以在虚拟机中直接使用img当作软盘)
run.bat 运行虚拟机,虚拟机装载img,引导进入系统
4.目录\01_day\z_tools:
make.exe Make程序,调用指定目录下的MakeFile文件执行命令
nask.exe 汇编程序
5.目录\01_day\z_tools\qemu:
makefile Make.exe的规则文件,指定了调用文件名是qemu-win.bat,内容:
default :
qemu-win.bat
qemu.bat 运行qemu虚拟机,qemu装载img,引导进入系统
其余文件存放的是qemu系统文件
6. 内容:
1)采用BZ.EXE文件手工编辑一个二进制文件(软盘IMG),这一步省略
2)编写helloos.nas,该文件并没有汇编指令,而是直接使用DB命令定义了机器指令,进入\01_day\helloos0,执行!cons_nt.bat,出现命令行窗口
3)在命令行窗口中执行asm.bat,生成helloos.img文件
4)执行run.bat,执行qemu,装载helloos.img文件,屏幕上显示"hello,world"
7.Virtual box虚拟机中使用img
在Virtual box新建虚拟机,软盘选择镜像文件(helloos.img),启动虚拟机,屏幕上显示"hello,world"
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)