是否可以在 AMD Ryzen 处理器(特别是 1600)上的 Windows 10 下运行 Hyper-V
Windows 允许我安装 Hyper-V 服务并创建客户机,但尝试启动客户机时出现以下错误 -
虚拟机“测试”无法启动,因为虚拟机管理程序未运行
环顾网络,我似乎无法找到任何确切的确认。
答案1
这里有两个方面需要考虑:
CPU 虚拟化。Ryzen 芯片绝对支持此功能,事实上,除了绝对最便宜的 APU 之外,我不知道有任何现代 AMD 芯片不支持此功能。我已经运行利用此功能的 VM(对于那些可能关心的人来说是 QEMU+KVM)很长时间了,没有任何问题。但是,可以在系统固件中禁用此功能,出于安全原因,大多数系统都默认禁用此功能(英特尔也是如此)。
IOMMU 支持。我不确定 Hyper-V 是否需要此功能,但我所知道的所有其他 1 型虚拟机管理程序都需要此功能,因此我认为 Hyper-V 也需要此功能。这是芯片组的属性。我知道 X370 芯片组有 IOMMU,我认为 X300 芯片组也有,但我不确定 A 系列或 B 系列芯片组是否有此功能。就像 CPU 虚拟化一样,此功能通常可以在 BIOS 中禁用,并且通常是默认禁用。
答案2
我正在使用技嘉 AX370 主板,它可能不是虚拟化的首选,但它确实有效。
直到我在 BIOS 中启用虚拟化功能后,Hyper-V 才会安装。此时,我可以安装该功能,但无法启动虚拟机,并收到与我最初问题中相同的错误。
原来 BIOS 中还有一个额外的选项可以打开 SVM,它隐藏在“高级频率设置”和“高级 CPU 核心设置”下。不知道为什么它位于频率设置下,而不是与其他虚拟化选项一起位于主 CPU 功能列表中,但一旦启用它们,一切都会正常工作。
答案3
听起来您运行的是 Hyper-V 管理软件,但底层 Hyper-V 基础架构并未运行。Hyper-V 是 1 型虚拟机管理程序,因此您在 Windows 中使用的软件只是一个控制台;实际的 Hyper-V 重要内容在操作系统加载之前加载。
- 确保 BIOS 中已启用 SVM。您不仅应在 BIOS 中验证它是否已启用,还应在任务管理器中验证它是否已启用...单击“性能”选项卡,单击“CPU”,然后在右下角区域,您将看到“虚拟化:”...确保它显示“已启用”。如果它显示“已禁用”,并且您在 BIOS 中启用了 SVM,那么我不确定您的问题是什么。
- 如果未启用虚拟化,或者它在某个过程中自行禁用,则可能必须卸载 Hyper-V 并重新安装。我不确定这一点,但如果您关闭 SVM 并尝试启动虚拟化系统,Windows 可能会将其卸载并使主机操作系统成为 Windows 的简单安装。我怀疑它会自动重新启用它,这可能是您所处的情况。
我已经在我的 Ryzen 系统(Gigabtye B350 主板)上运行 Hyper-V 大约 3 个月了。一切都运行良好,只是您无法在虚拟机中运行 x86 版本的 Windows;有一个 VME 错误,AMD 声称已经修复,但实际上并没有。
编辑:同样,确保您的系统上没有运行任何其他虚拟化软件;这些可能会产生一系列奇怪的问题。
答案4
我尝试在装有 Ryzen 7 2700X 和 MSI X470 主板的 Windows 10 Pro 64 位系统上运行 Hyper-V,但遇到了问题。我在处理器上启用了虚拟化支持,但即便如此,它也无法正常运行(呼呼)。虚拟机将启动,然后挂起并保持“运行”状态,但不会进一步执行。
我进入 BIOS 并更改了一些设置。不确定是哪一个起了作用,但我将同步多线程从自动改为启用,将 VRAM/GPU 设置改为启用 64 位,并更改了另一个我不记得的模糊高级设置。
总之,在我做出更改后,我的系统上的虚拟化似乎运行正常。进入 BIOS 并启用可能影响虚拟化,它可以帮助您解决问题。是的,这是瞎猜,但有时这是解决问题的必需措施。