15

To use Windows Subsystem for Linux 2 in Windows 10 May 2020 update, the documentation says that I must turn on the "Virtual Machine Platform" Windows feature. Is it some sort of Hyper-V? Doesn't it cause the same problems as Hyper-V with other software?

8
  • 1
    What is your other software? Using the above would best mean uninstalling VMware if you have it running.
    – anon
    Commented May 30, 2020 at 20:58
  • 3
    @John - VMWare 15.5.5 is now compatible with Hyper-V
    – Ramhound
    Commented May 30, 2020 at 21:10
  • 1
    That is good to know. I have 15.5.5 running since yesterday. Anything much lower was not compatible.
    – anon
    Commented May 30, 2020 at 21:12
  • 1
    According to the release notes VMware 15.5.5 is compatible but your Windows host OS version is required to be 19041.264 or later. Currently this the latest Windows Insider version in Slow ring.
    – Gabor
    Commented May 30, 2020 at 22:08
  • 2
    Most of this stuff is very new. 19041.264 out May 27, VMware 15.5.5 only May 28, so unless the author is this newly up to date, so that is why I posted to use care with VMware.
    – anon
    Commented May 30, 2020 at 22:16

2 Answers 2

24

Update for Windows 11

Compared to it being an optional feature on Windows 10, Microsoft demands everyone to be using Windows Hypervisor with Windows 11. This is clearly communicated in the supported configurations: your CPU must support x86 virtualization extensions and it must be turned on in Bios/UEFI. Virtualization based security features are enabled by default (even though it can be disabled through configurations, for now). This feature is called "Core Isolation" in Windows Defender and KVCI in various documentations. It means while you can continue to use WSL2 and the latest VMWare/VirtualBox software on Windows 11, you cannot use older releases of VMWare Workstation or VirtualBox on Windows 11 with their own hypervisor.

Full answer

To discuss this you first need to know the different components of a virtualization stack:

The (bare metal) hypervisor called Windows Hypervisor[1] - the software that runs on the machine with the highest level of privilege. It controls what amount of CPU time each partition gets.

The partitions - operating system software that are less privileged than the hypervisor. They run your applications. These are Windows, Linux, Docker images, Android. The "main" OS, sometimes called "host", is officially known as parent partition.[2]

The client software that controls the Windows Hypervisor called Hyper-V platform[3] - not to be confused with the hypervisor itself. Services in the platform sends command to the hypervisor to control it, turning up VMs, shutting down VMs, copy, backup etc. This platform software runs on the parent partition, which has access rights to control the Windows Hypervisor.

The GUI software Hyper-V Manager that controls Hyper-V platform. You can also use Powershell to control Hyper-V platform if you don't want a GUI.

The API that Microsoft exposed to allow third party software to use the Windows Hypervisor, this is called Windows Hypervisor Platform[4]. VMWare Workstation 15.5.5+ and VirtualBox 6+ can use this new API to run VM on the Windows Hypervisor. (They can use either their own hypervisor or the Windows Hypervisor)

Another API, which Microsoft uses internally for WSL2, called Virtual Machine Platform. This is undocumented by Microsoft. The only thing they mention is that you need to enable this for WSL2.[5]

Finally, Microsoft calls the ability to create, start, stop, copy VMs using Hyper-V Platform simply Hyper-V. This ability is limited to Windows Server and Windows Pro, Enterprise, Education[6]. Do not confuse the ability to run VMs on Windows Hypervisor with Hyper-V. Windows 10 Home can use WSL2 containers running on Windows Hypervisor, it can also run VMs on Windows Hypervisor using Windows Hypervisor Platform API through VMWare/VirtualBox.

A few other virtualization based feature that requires the Windows Hypervisor on Windows 10/11 and their server counterparts are: Hypervisor-protected code integrity (KVCI)[7], Microsoft Defender Application Guard[8], Windows Sandbox[9], Windows Subsystem for Android (Windows 11 only)[10].

Before Windows Hypervisor Platform, people normally claim Hyper-V is incompatible with third party hypervisor used by VMWare/VirtualBox. This is technically comparing Apples to Oranges. A more direct comparison is between Windows Hypervisor and third party hypervisors, which are incompatible.

Back to your question

Is it some sort of Hyper-V? Doesn't it cause the same problems as Hyper-V with other software?

Hyper-V uses Windows Hypervisor, WSL2 also uses Windows Hypervisor through Virtual Machine Platform, they are compatible. VMWare Workstation 15.5.5+ and VirtualBox 6+ can also use Windows Hypervisor through Windows Hypervisor Platform, which is also compatible.[11]

Any third party hypervisor not making use of Windows Hypervisor is incompatible with WSL2 or Hyper-V.

[1] Hyper-V uses the Windows hypervisor - https://docs.microsoft.com/en-us/windows-server/virtualization/hyper-v/hyper-v-technology-overview#how-hyper-v-works

[2] The Microsoft hypervisor must have at least one parent, or root, partition, running Windows. https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/reference/hyper-v-architecture

[3] Hyper-V has required parts that work together so you can create and run virtual machines. Together, these parts are called the virtualization platform. https://docs.microsoft.com/en-us/windows-server/virtualization/hyper-v/hyper-v-technology-overview#what-does-hyper-v-consist-of

[4] https://docs.microsoft.com/en-us/virtualization/api/

[5] WSL 2 is available [...] including Windows 10 Home. The newest version of WSL uses Hyper-V architecture to enable its virtualization. This architecture will be available in the 'Virtual Machine Platform' optional component. https://docs.microsoft.com/en-us/windows/wsl/wsl2-faq#does-wsl-2-use-hyper-v-will-it-be-available-on-windows-10-home

[6] https://docs.microsoft.com/en-us/virtualization/hyper-v-on-windows/quick-start/enable-hyper-v#check-requirements

[7] Enable virtualization-based protection of code integrity https://docs.microsoft.com/en-us/windows/security/threat-protection/device-guard/enable-virtualization-based-protection-of-code-integrity

[8] Prepare to install Microsoft Defender Application Guard https://docs.microsoft.com/en-us/windows/security/threat-protection/microsoft-defender-application-guard/install-md-app-guard

[9] https://techcommunity.microsoft.com/t5/windows-kernel-internals/windows-sandbox/ba-p/301849

[10] Windows Subsystem for Android™️ https://docs.microsoft.com/en-us/windows/android/wsa/

[11] recently both VirtualBox and VMware have released versions that support Hyper-V and WSL2. https://docs.microsoft.com/en-us/windows/wsl/wsl2-faq#will-i-be-able-to-run-wsl-2-and-other-3rd-party-virtualization-tools-such-as-vmware-or-virtualbox

6
  • 2
    I clearly have WSL2 / Ubuntu running, yet "Virtual Machine Platform" Windows feature is NOT checked; My windows version is 20H2 , so the requirement that VMP must be enabled may not (no longer) be true.
    – joedotnot
    Commented Apr 21, 2021 at 16:08
  • Are you sure your ubuntu is running on WSL2 on not WSL1? it can be checked through wsl.exe cli
    – kaki gadol
    Commented May 25, 2021 at 5:29
  • 1
    @kakigadol I also confirm that running WSL2 only requires hyper-v and windows subsystem for Linux checked, and both of virtual machine platform and windows hypervisor platform are unchecked in Windows Features Commented Nov 1, 2021 at 9:47
  • 1
    I'm just quoting Microsoft's official docs. It is entirely possible Microsoft's documentation is inconsistent with their product. Admittedly I haven't tried WSL2 because I didn't want to be running my primary OS on Windows Hypervisor at all times.
    – 1283822
    Commented Nov 2, 2021 at 6:49
  • Virtual Machine Platform appears to be the integration component for Windows Explorer. Is it what enables you pin and start WSL2 apps from the start menu?
    – user165568
    Commented Apr 5, 2022 at 5:26
1

Is it some sort of Hyper-V?

No, It’s related to Hyper-V, but it’s an entirely separate Windows Feature.

Doesn't it cause the same problems as Hyper-V with other software?

It would only cause a problem with incompatible software.

  • Hyper-V is Microsoft's Hypervisor.

  • Virtual Machine Platform - "Enables platform support for virtual machines" and is required for WSL2. Virtual Machine Platform can be used to create MSIX Application packages for an App-V or MSI.

  • Windows Hypervisor Platform - "Enables virtualization software to run on the Windows hypervisor" is required for Docker on Windows. The Hypervisor platform is an API that third-party developers can use in order to use Hyper-V. Oracle VirtualBox, Docker, and QEMU are examples of these projects.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .