自己动手编写操作系统_引导程序

需要准备的软件:
    1.汇编编译器NASM
    2.虚拟机软件Vmware
    3.Ubuntu Linux
    4.微型FTP服务器(方便从虚拟机里的Linux向宿主机系统Windows传输文件) 

 step1:
     进入到虚拟机里的Ubuntu Linux下,使用vim编辑工具输入如下代码:

org 07c00h                                ;告诉编译器程序加载到07c00h处
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 = 13h,AL=01h
mov bx,000ch                          ;页号为0(BH=0) 黑底红字(BL=0ch,高亮)
mov dl,0
int 10h                                     ;10h中断
ret
BootMessage: db "Hello, OS World!"
times 510-($-$$) db 0                ;填充空余空间,使得字节数恰好为512字节
dw 0xaa55                                      ;引导程序结束标志

step2:
    使用NASM编译代码文件,在终端中输入:nasm boot.asm -o boot.bin
    生成img文件: dd conv=sync if=boot.bin of=boot.img bs=1440k count=1

step3:
     将文件从虚拟机中通过FTP传输到Windows下:

step4:
    使用vmware添加一个新的虚拟机 

 

单击定制硬件

 

关闭后点完成,创建虚拟机完毕

step5:
    运行创建的虚拟机 

 

至此,操作系统的引导程序编写完毕!

参考资料: 《
ORANGE’S:一个操作系统的实现》

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值