英特尔虚拟化技术和 VT-X 无法在 Windows 8.1 上运行

英特尔虚拟化技术和 VT-X 无法在 Windows 8.1 上运行

我正在尝试使用 Intel 虚拟化技术和 VT-X 运行 x86 Android 虚拟设备。模拟器正常运行需要这些功能。但是,我似乎无法让它工作。

非常奇怪的是,操作系统似乎总是与我的 BIOS 设置相矛盾。当在 BIOS 中启用这两个功能时,Windows 认为它​​们不可用:

在此处输入图片描述

另一方面,当它们都在 BIOS 中被禁用时,Windows 认为它​​们可用。不幸的是,尽管操作系统认为这些功能可用,但我仍然无法启动模拟器,因为它们在 BIOS 中实际上被禁用了。在这种情况下,当我尝试启动模拟器时,我收到此错误消息:

Starting emulator for AVD 'x86_10-inch' 
emulator: device fd:1096
HAX is not working and emulator runs in emulation mode
emulator: VT feature is not enabled, HAXM not working.
creating window 0 0 845 528

有时,在重启了无数次之后,我随机让它工作了。我有点束手无策了,这个问题让工作变得非常低效。任何帮助都将不胜感激!

需要澄清的是,纯模拟不是一种选择。实现良好速度的唯一方法是使用硬件虚拟化。当一切随机正常工作时,我能够使用硬件虚拟化启动虚拟设备,并且运行良好。

我的规格:

华硕 N56J、英特尔 i7-4700HQ 2.4GHz、Windows 8.1 Pro、8GB RAM

答案1

对于仍有此问题的人,我已经成功解决了它。问题是由于Intel 虚拟化技术和 Hyper-V 不能同时运行。有几种可能的解决方案,请选择最适合您的一种:

  1. 在系统中完全禁用 Hyper-V。

    可以通过打开控制面板 -> 程序和功能 -> 打开或关闭 Windows 功能,然后取消选择列表中的 Hyper-V 来完成此操作,或者通过命令提示符使用以下命令来完成此操作:

    Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V-All
    

    请注意,此操作需要具有提升权限(即管理员模式)的命令提示符。要重新启用 Hyper-V,请使用以下命令:

    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V –All
    
  2. 防止 Hyper-V 在系统启动时运行

    对于偶尔需要 Hyper-V 的用户(例如用于 Windows Phone 模拟),这种方式可能更方便。要阻止 Hyper-V 自动启动,请使用以下命令:

    bcdedit /set hypervisorlaunchtype off
    

    要重新启用自动启动,请使用以下命令:

    bcdedit /set hypervisorlaunchtype auto
    

    再次,这需要具有提升权限的命令提示符窗口。

    所有这些命令都需要重新启动才能生效。

答案2

我遇到了类似的问题。VT-x 功能在 MSR 中被锁定或不可用。VERR_VMX_MSR_LOCKED_OR_DISABLED。我运行 VMBox 多年,但从未遇到过这种情况……我查看了所有论坛,但都无济于事,后来我意识到我的防病毒软件有更新。所以问题出在新的 AVAST 防病毒软件上。在 AVAST 选项-> 故障排除-> 禁用硬件虚拟化

重新启动后,我可以再次启动我的 VirtaulBox,VT-x 功能不再被阻止。

我希望这篇文章也能对你们有所帮助。

问候马丁

相关内容