Here is a quick blog post on how you can run Hyper-V virtual machines (VM) on Windows 10 on ARM and the Surface Pro X.
I am running the Surface Pro X as my daily driver for a couple of months. It is a fantastic device and combines a light designed and the Surface Pro form factor with a 13-inch screen. But the most significant difference to the other Surface devices like the Surface Pro 7, is that the Surface Pro X is running Windows 10 on ARM. It has a custom Microsoft SQ1 chip. This limits it to run native ARM64 or emulated 32-bit x86 applications, and it can’t run classic 64-bit x64 applications at the moment. Another limitation was that I wasn’t able to run Hyper-V virtual machines (VMs) on my Surface Pro X.
With the Windows 10 Insider Preview build 19559, you were able to install Hyper-V. However, you didn’t have a compatible image to run inside the virtual machine (VM). With the Windows 10 Insider Preview Build 19631, Microsoft is now also providing an ARM64 VHDX file, which you can download and run as a guest OS in Hyper-V.
How to enable Hyper-V on Windows 10 on ARM
You need a Windows 10 ARM-based PC with a Microsoft SQ1, Qualcomm Snapdragon 8cx, or Qualcomm Snapdragon 850 processor. To enable the Hyper-V feature on Windows 10 on ARM and the Surface Pro X, you will also need to have installed the Windows 10 Insider Preview build 19559 or higher and have Windows 10 Pro or Windows 10 Enterprise.
- Join the Windows Insider Program and update to the latest Windows 10 Insider Fast Ring build 19559 or newer
- Upgrade your Windows edition from Home to Windows 10 Pro or Windows 10 Enterprise
- Install the Hyper-V feature on Windows 10You can run the following PowerShell command to install the Hyper-V feature.
Enable-WindowsOptionalFeature -Online -FeatureName:Microsoft-Hyper-V -All
- Download the Windows 10 on ARM VHDX file from here.
- After that, you can create a Hyper-V virtual machine (VM) with an existing VHDX file on your Surface Pro X.
- Visit Windows 10 on ARM developer center for more details and documentation.
Conclusion
I hope this gives an overview of how to run Hyper-V VMs on Windows 10 on ARM. This is still in preview, but if you are like me and want to give it a try, you can. Let me know if you have any questions.
Tags: ARM, Hyper-V, Microsoft, Processor, Qualcomm, Snapdragon, SQ1, Surface, Surface Pro X, VHDX, Virtualization, Windows, Windows 10, Windows Insider Last modified: June 15, 2020
Thanks for sharing but the big question is can you run applications on the VM that you can’t on the host OS.
So far I am very disappointed with the X upgrade.
Nothing will install even Microsoft stuff.
Hi Dominic
Well You will need to run ARM apps or x86 32-bit apps will run as well. x64 apps are currently not able to run (but I think the Windows team said that they are working on it). The same limitations also apply for the Apps within the virtual machine.
Hey Thomas!
was wondering if there was any way i can run SP3 on a VM? thanks! someone stole my SP3 and im trying to recover some files that were not cloud stored.
Hi Thomas,
Do you have any indication if and when there will be Windows on ARM VMs available in Azure? Certainly the newly added arm64 support for Hyper-V will help I assume.
I’m curious because I’m helping some (open source) software projects to launch Windows on ARM versions. While cross-compiling from a x64 host works, they can’t run their test suites on arm64 since there’s not a single CI/cloud provider offering Windows on ARM VMs currently. One of the few options they have currently is to have an arm64 device (like the Surface Pro X) running in their offices with the Azure Pipelines x86 agent on it, which is far from ideal.
Thanks in advance!
Is it confirmed this doesn’t work with Windows 10 Business? only for Pro or Enterprise ?
Versions 20H2 Build:19042.572
I am getting this error:
Enable-WindowsOptionalFeature : Feature name Microsoft-Hyper-V is unknown.
At line:1 char:1
+ Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V …
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : NotSpecified: (:) [Enable-WindowsOptionalFeature], COMException
+ FullyQualifiedErrorId : Microsoft.Dism.Commands.EnableWindowsOptionalFeatureCommand
Business?
Hyper-V is only available in Pro, Pro for Workstations, Enterprise, and I think Education.
The blog post mentioned you need to join the insider ring and upgrade to at least build 19559. You’re running 19042.
Hi Thomas,
Will Windows Defender Application Guard work? WDAG requires VT-X or AMD-V but Hyper-V is running on it. Since the last insider build MS will move from Hyper-V to container which needs less resources and it won‘t need VT-X. But right now, can I use WDAG in Edge on a Surface Pro X. Didn’t find any information on MS docs.
Many thanks
Hi Thomas,
Will Windows Defender Application Guard work? WDAG requires VT-X or AMD-V but Hyper-V is running on it. Since the last insider build MS will move from Hyper-V to container which needs less resources and it won‘t need VT-X. But right now, can I use WDAG in Edge on a Surface Pro X. Didn’t find any information on MS docs.
Many thanks
Will need to check :)