「操作系统」《自己动手写操作系统》1.2 “十分钟”完成的操作系统
在笔者上一篇的文章《1.1前期准备工作》中有详细介绍前期准备工作
笔者吐槽:虽然作者说的是十分钟完成的操作系统,但是笔者却在纠结了很多个十分钟后终于纠结完了,希望笔者的经历能够帮到大家。
一、路径配置
需要在建立一个纯英文路径进行存储我们自己做的操作系统,不要问我为什么
笔者的路径是“G:\OS\One OS\chapter1\a”
二、编写操作系统
1.选择一款自己喜欢的汇编代码编辑器,笔者用的是TextPad,也可以用记事本
2.“G:\OS\One OS\chapter1\a”路径下建立“boot.asm”文件
3.用汇编代码编辑器打开“boot.asm”文件,写入以下代码
org 07c00h ; 告诉编译器程序加载到7c00处 mov ax, cs mov ds, ax mov es, ax call DispStr ; 调用显示字符串例程 jmp $ ; 无限循环 DispStr: mov ax, BootMessage mov bp, ax ; ES:BP = 串地址 mov cx, 16 ; CX = 串长度 mov ax, 01301h ; AH = 13, AL = 01h mov bx, 000ch ; 页号为0(BH = 0) 黑底红字(BL = 0Ch,高亮) mov dl, 0 int 10h ; 10h 号中断 ret BootMessage: db "Hello, One OS!" ; 想要开机后在屏幕上显示的字符串 times 510-($-$$) db 0 ; 填充剩下的空间,使生成的二进制代码恰好为512字节 dw 0xaa55 ; 结束标志
4.保存并关闭“boot.asm”文件
三、编译操作系统
1.打开已安装好的NASM目录下的\nasmpath.bat
2.将路径改到“boot.asm”目录,并将“boot.asm”文件编译成“boot.bin”文件
四、制作虚拟软盘
1.将之前下载的光盘资料中\Tinix\chapter1\a\TINIX.IMG文件拷贝到存放“boot.asm”的目录下并改名为“One OS.IMG”,笔者的目录是“G:\OS\One OS\chapter1\a”
2.打开之前安装好的FloppyWriter.exe,做以下操作
五、运行操作系统
1.为虚拟机添加我们刚才做好的虚拟软盘
2.双击启动虚拟机
好了,我们花了很多个十分钟终于做好并启动了自己做的操作系统
原创文章,转载请注明出处