操作系统开发 - 使用qemu从软盘驱动器启动

时间:2013-11-13 18:03:12

标签: boot qemu osdev floppy

我一直在阅读BrokenThorn的操作系统开发教程,我正在创建和加载第二阶段引导加载程序。本教程适用于Windows,但我在Linux(Ubuntu 13.04)中这样做。

这就是我所做的:

  • 使用floppy.img命令
  • ~/Documents/floppy下创建了文件mkfs.vfat
  • 使用nasm编译boot.asm文件给我boot.bin
  • 然后我运行了这个命令:dd if=boot.bin of=~/Documents/floppy/floppy.img bs=512 count=1

因此,我有第一阶段bootloader的软盘映像。在使用qemu开始时,它工作正常。

但是,在我创建第二阶段引导加载程序后,(如果我是正确的)我将必须挂载floppy.img并将第2阶段复制到已安装的文件系统上。在这种情况下,如何使用qemu启动已安装的软盘?它甚至可能吗?如果没有,我如何使用第二阶段引导加载程序。

请原谅我任何愚蠢的假设/问题,因为我是新手。

1 个答案:

答案 0 :(得分:4)

你的问题在哪里?您挂载图像:

mount -oloop ~/Documents/floppy.img /mnt/floppy

复制第2阶段:

cp stage2.bin /mnt/floppy

卸下它:

umount /mnt/floppy

使用QEMU启动它:

qemu -fda ~/Documents/floppy.img

瞧!