[手写OS]动手实现一个OS之第一步-环境以及引导扇区
环境准备
- 一台可用计算机(linux我不知道,我用的Windows)
- 汇编编译器NASM
- 一个方便的软盘读写工具
- VirtualBox
汇编编译器NASM
官网地址:https://www.nasm.us/pub/nasm/snapshots/latest/win64/(windows的地址)
直接下载地址:https://www.nasm.us/pub/nasm/snapshots/latest/win64/nasm-2.17rc0-20230220-installer-x64.exe (我的版本是 2.17)
下载后得到:

然后点击安装
选择好你要安装的位置,记住自己安装在哪儿了(之后配置环境变量有用!)

然后一路 Next
结束后,找到你的软件安装位置

并设置环境变量(这些步骤就不用讲了吧)
一个方便的软盘读写工具
在linux中有dd命令,windows要下载:[http://www.chrysocome.net/downloads/dd-0.5.zip][http://www.chrysocome.net/downloads/dd-0.5.zip]
解压,准备好其中的dd.exe
Virtual Box
下载地址: https://www.oracle.com/virtualization/virtualbox/
开始
-
找一个文件夹,例如我在F盘下有一个MyOS文件夹
在此处创建一个虚拟磁盘
在此打开cmd命令窗口 输入
diskpart
弹出窗口

输入
create vdisk file="F:\MyOS\dingst.vhd" maximum=10 type=fixed解释:
- file= :创建你的虚拟磁盘位置文件
- maximum= : 创建10M
- type=fixed: 固定分区
执行后可以看到

-
编写引导扇区汇编文件
org 07c00h mov ax,cs mov ds,ax mov es,ax call Disp jmp $ Disp: mov ax,BootMsg mov bp,ax mov cx,16 mov ax,01301h mov bx,000ch mov dl,0 int 10h BootMsg: db "Hello, My OS!" times 510 - ($-$$) db 0 dw 0xaa55并保存为 hello.asm

-
通过之前的汇编器编译该文件
nasm .\hello.asm -o .\boot.bin编译成boot.bin二进制文件

-
通过软盘读写工具dd.exe将boot.bin写入到dingst.vhd中
先将dd.exe复制到当前文件夹下
然后在命令窗口中执行:
.\dd if=.\\boot.bin of=.\\dingst.vhd
出现下面的内容说明已经写入成功
使用VirtualBox启动你写的这个系统
打开VirtualBox > 新建

内存开个4M,不要给自己整复杂了!

选择已有的虚拟磁盘文件


找到你的写好的那个虚拟磁盘文件




然后启动,等待,成功!












![【GO】K8s 管理系统项目34[Linux环境–应用部署]](https://img-blog.csdnimg.cn/a6a7bb0464004b70b701f5b6eecb2a11.png)







