一个系统引导程序的简单示例1

来源:互联网 发布:数据段 代码段堆栈段 编辑:程序博客网 时间:2024/05/19 22:52

在做这个引导程序之前需准备:ubuntu操作系统(16.04)、VMware虚拟机、nasm编译器

如何安装ubuntu操作系统和VMware虚拟机:安装教程见http://blog.csdn.net/u013142781/article/details/50529030

如何将nasm编译器导入ubuntu系统:

1.下载安装文件
地址是:http://www.nasm.us/pub/nasm/releasebuilds/2.10.07/    选择nasm-2.10.07.tar.gz下载,然后copy到虚拟机中

2.解压 

tar -xf nasm-2.10.07.tar.gz


3.进入解压目录
进入刚解压的目录,分别输入
./configure
make
sudo make install

注:当你sudo的时候,要求你输入密码,该密码为开机密码,且不可见,另外可以使用sudo passwd root修改密码


通过以上的步骤nasm就在ubuntu上安装好了。也可以通过使用命令:nasm -version来查看是否安装成功。如果出现了nasm的版本信息则说明安装成功,否则还需进一步安装。


现在我们可以开始编写一个最简单的系统引导程序了 将boot.asm写入刚解压的文件nasm-2.10.07中


该代码很多地方都有,这就是最简单的操作系统,只依靠裸机运行

接着我们要创建自己的软盘镜像文件,然后将刚才编译的boot.bin导入软盘镜像文件,原理是电脑上电时,先读软盘驱动的第一个扇区(512B),而我们编译生成的boot.bin文件刚好是512字节,所以直接运行boot.bin中代码。


boot.bin文件写入startos.img的软盘镜像中,然后将startos.img文件移到windows中,然后在VMware的设置中添加软盘驱动


然后开启虚拟机



出现上述界面,说明我们编写的boot.asm可以在逻辑上运行了,完成一个最小的OS编写,是不是很开心O(∩_∩)O~~

0 0
原创粉丝点击