在 Qemu 上运行时 WinXP BSOD

在 Qemu 上运行时 WinXP BSOD

我在装有 WinXP 的虚拟盒上有一个旧的虚拟机,我将它转换为原始 QEMU 格式,我尝试在 Win10 和 Debian 上运行该映像,但出现了这个 BSOD。

这是 Windows 上的命令行,我尝试运行它

"C:\Program Files\qemu\qemu-system-x86_64.exe" -drive format=raw,file=winxp.img -L "C:\Program Files\qemu"

我在 Windows 10 上使用的 QEMU 版本

QEMU 模拟器版本 5.2.0(v5.2.0-11852-g66075e5998-dirty)

这是错误信息

*** 停止:0x0000007B (0xF7A09528,0xC0000034,0x00000000,0x00000000)

在此处输入图片描述

任何想法?

答案1

正如注释中所说,0x0000007b 表示缺少启动设备。这很可能是因为您的 winxp 默认安装没有虚拟硬盘接口的驱动程序,而 qemu 会为其提供该驱动程序。

玩弄-device标志,并在网上谷歌搜索,qemu 很有可能可以提供一个虚拟硬盘控制器,该控制器在默认的 winxp 安装中有一个驱动程序。

请注意,安装开始时之所以能成功,是因为虚拟 bios 已经成功(qemu 也提供)。当你看到蓝色死亡时,你已经处于保护模式,无法访问 bios 驱动程序。WinXP 当时需要加载硬盘控制器驱动程序,但这并没有发生。

这个命令对我有用:

qemu-system-i386 -hda work/winxp.img \
  -cdrom dl/winxp.iso -boot d -cpu qemu64 -m 512 \
  -vga cirrus -display vnc=0.0.0.0:1 \
  -net nic,model=rtl8139 -net user

结果是 winxp 可以正常工作。我该如何改进它(比如使用 virtio 等),目前我都不知道。

相关内容