Windows 上 QEMU 模拟器版本 2.11.90 的 aio_context_set_poll_params() 意外错误

Unexpected error in aio_context_set_poll_params() for QEMU emulator version 2.11.90 on Windows

我正在 Windows 上尝试这个:https://github.com/cfenollosa/os-tutorial/tree/master/01-bootsector-barebones

E:\Code\MyOS\os>D:\qemu\qemu-system-x86_64.exe boot_sect_simple.bin
WARNING: Image format was not specified for 'boot_sect_simple.bin' and probing guessed raw.
         Automatically detecting the format is dangerous for raw images, write operations on block 0 will be restricted.

         Specify the 'raw' format explicitly to remove the restrictions.
Unexpected error in aio_context_set_poll_params() at /home/stefan/src/qemu/repo.or.cz/qemu/ar7/util/aio-win32.c:413:
D:\qemu\qemu-system-x86_64.exe: AioContext polling is not implemented on Windows

This application has requested the Runtime to terminate it in an unusual way.
Please contact the application's support team for more information.

这也给出了同样的错误:

D:\qemu\qemu-system-x86_64.exe -drive format=raw,file=boot_sect_simple.bin

QEMU 版本:

E:\Code\MyOS\os>D:\qemu\qemu-system-x86_64.exe -version
QEMU emulator version 2.11.90 (v2.12.0-rc0-11704-g30195e9d53-dirty)
Copyright (c) 2003-2017 Fabrice Bellard and the QEMU Project developers

NASM版本:

E:\Code\MyOS\os>E:\Code\MyOS\nasm-2.13.03\nasm.exe -version
NASM version 2.13.03 compiled on Feb  7 2018

这是您正在使用的 (release-candidate rc0) 版本的 QEMU 中的错误:https://bugs.launchpad.net/qemu/+bug/1761027 它在最终的 2.12.0 版本中得到修复。所以你应该升级你的 QEMU(升级到 2.12.0 或更新的 3.0)。

一般来说,运行 发布候选版本不是一个好主意,除非您专门使用它们在完整发布之前对其进行测试。