Freedos引导程序似乎存在问题。 (看起来bootcode在某些情况下找不到内核。)在qemu中使用gdb调试引导程序
所以我想用gdb在qemu中调试bootloader。以下几个wiki和在线免费提供课程材料中的说明,我跑QEMU这样
qemu-system-i386 -fda fdboot.img -boot a -s -S
然后连接GDB这样
$ gdb
(gdb) target remote localhost:1234
我可以通过前10个步骤 - 与12条指令我认为这是SeaBIOS的si
。
但是过去,当我尝试进入引导加载程序代码时,它会继续执行而不会中断,一直到FreeDos菜单提示。这完全跳过了Bootloader代码,我想逐步检查它的执行情况。
我需要做什么以便我可以通过引导加载程序执行一些操作?
[您可以从项目网站下载FreeDOS的软盘镜像,如果你想尝试自己。]
其他建议:BOCHS有一个内置的调试器,可以让您单步引导扇区。 –