我正在尝试编写一个简单的操作系统,我已经编写了一个引导加载程序,但现在我想调试它,所以我从使用 VirtualBox 切换到 QEMU,因为我看到它有更好的调试功能。问题是,在我将 -s 参数添加到 QEMU 命令并通过 GDB 成功连接后,它说符号表没有加载,我应该使用“文件”命令。我所做的与我在 Internet 上看到的人所做的唯一区别是他们使用 启动 GDB gdb vmlinux
,但我不能这样做,因为我没有调试 Linux 内核......所以我认为问题在于我没有使用可执行文件启动 GDB,而是使用我的操作系统映像上的“文件”命令,以及编译和链接的 .out 文件,告诉我这是一个“DOS/MBR 引导扇区”,所以我可以
帮助将不胜感激。
编辑:另外,我确实使用 -g 和 --gstabs+ 选项组装了引导加载程序。