在VirtualBox虚拟机中运行Android模拟器

7

我正在使用 Windows 10 1903 操作系统,需要在使用 Android 模拟器时运行 Linux 虚拟机。我的 CPU 是 AMD Ryzen 5 3600x。

如果禁用 Windows Hypervisor Platform,虚拟机可以正常工作,但模拟器无法正常工作(除了 ARM 镜像以外)。但是,由于其性能不理想,我还没有测试过 ARM 镜像。

VirtualBox 最近似乎对此提供了一些支持,但是最新的 Windows 更新破坏了它,如 帖子所述。

显然,使用 Genymotion 模拟器是一个选项,但不幸的是,这不是免费的。另外,转换到 Linux 也不是一个选项。

除了依赖于 ARM 镜像外,是否有其他方法来解决这个问题?如果您有任何想法,将不胜感激,因为我已经花费了太多时间在这个问题上。

为了更好地了解情况,虚拟机日志显示了以下信息(值得关注):

00:00:01.324766 ********************* End of CFGM dump **********************
00:00:01.324820 HM: HMR3Init: Attempting fall back to NEM: AMD-V is not available
00:00:01.353579 NEM: WHvCapabilityCodeHypervisorPresent is TRUE, so this might work...
00:00:01.353588 NEM: WHvCapabilityCodeExtendedVmExits      = 0x0000000000000007

最终结果如下:

最终:

00:00:01.354665 NEM: Adjusting APIC configuration from X2APIC to APIC max mode.  X2APIC is not supported by the WinHvPlatform API!
00:00:01.354667 NEM: Disable Hyper-V if you need X2APIC for your guests!

我认为这与Hyper-V占用了所有AMD-V使用能力有关,或者说与Windows Hypervisor Platform有关,因为这是唯一启用的Windows虚拟化功能。
2个回答

2
解决方法是使用Hyper-V快速创建,它也使用Hyper-V。这样,我就可以同时使用仿真器和虚拟机与Hyper-V一起工作,而不会有任何冲突或进一步的更改。
如果有其他替代方案,我仍然想了解。此外,我希望在VirtualBox更新后能够回到它,因为在这个Microsoft VM Connection套件上的性能似乎不如VirtualBox。
我不确定这种情况是否常见,或者对大多数人是否相关,但我会尝试随时更新这个答案。

1

另一个选择是使用Google新发布的AMD Hypervisor emulator

我花了一些时间才找到它,但它使您无需Hyper-V或WHP即可解决此问题。性能似乎也与HAXM相当。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接