QEMU -S 标志显示问题

QEMU -S 标志显示问题

我正在尝试调试我的内核,并且指定 -S 标志时 QEMU 不起作用,例如:

qemu-system-x86_64 -kernel build/boot/TinyKernel.elf -m 256M -S -s

尝试时,我得到了这个Guest has not initialized the display (yet).屏幕,这真的很令人困惑。我到处寻找,试图弄清楚为什么会这样,但我就是想不通。我唯一的猜测是,它不再具有与我使用的当前版本的 QEMU 相同的功能(5.2.0)。

有人知道为什么会发生此问题,以及如何解决它?

谢谢!

答案1

-S 表示“实际上不开始运行客户机”。因此,预计不会发生任何事情,特别是客户机没有对图形设备进行任何编程以显示任何内容。QEMU 正在等待您将调试器附加到 gdb 存根,然后通过 gdb 的“continue”命令告诉 QEMU 启动。

(也可以通过监视命令启动客户机,但通常如果您使用“-s”来启用 gdb 存根,则使用“-S”让您有机会在运行客户机之前连接 gdb,因此通过 gdb 是启动客户机的直接方法。)

相关内容