用nasm编写一个boot程序打印hellworld
Bootlaoder
1. 使用汇编语言编写一个二进制程序,显示HelloWorld
1. 编写asm.asm
asm.asm
1 | [BITS 16] |
2. 编写makfile文件
makefile
1 | all: |
3. 运行make命令编译
1 | make all |
4. 使用qemu虚拟机运行boot.bin
1 | qemu-system-x86_64 -hda ./boot.bin |
运行成功。
参考资料
OS development 101 - How to make a bootloader part 1 - Hello World
在Linux中将二进制文件boot.bin制作成img镜像并在虚拟机中启动
1. 在Linux中将二进制文件boot.bin制作成img镜像
切换到存放boot.bin文件的目录。
制作一个包含boot.bin的映像文件boot.img:
1
dd if=boot.bin of=boot.img bs=512 count=1
boot.img制作成功
此方法只能将img文件当成纯二进制文件运行
2. 在qemu中加载boot.img
1 | qemu-system-x86_64 -hda ./boot.bin |
3. 在vmware中启动boot.img
- 创建一个空的虚拟机
- 添加设备Floppy
- 在Floppy中选择bin.img文件。
- 断开CD/DVD连接,启动成功。
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.
