I probably own more ARM64-based machines than then typical person, and I used those somewhat regularly for testing OS deployment scenarios. Virtual machines are usually more productive for those types of activities, hence my desire to run virtual machines on my M1 Mac Mini. My blog from February compared the options available at the time. As both Parallels Desktop and VMware Fusion have both been updated, it’s worth revisiting that blog.
So what’s new in Parallels Desktop? Beyond the typical stuff (support for the latest OSes, support for the latest Apple silicon, etc.), there’s also the”[d]ownload, install, and configure Windows 11 in one click.” Previously, that was only supported on x86-based Macs. This doesn’t have any footnotes about it not supporting arm64. So let’s try it.
After selecting “Get Windows 11 from Microsoft” it then began downloading:
And as soon as that download finished, it began installing:
Looking at the VM properties during that install, I can see that it has attached an ISO:
And searching for that file on my Mac, I can find it in the “Downloads” folder. Translating that file name, it’s a standard “client” image of Windows 11 21H2 (patched), so in theory that ISO contains all the retail SKUs. A quick check (mounting the ISO on a Windows machine and using DISM to look at the Windows image file) confirms that:
After accepting the license terms (EULA) for Windows, you’re automatically logged on by Parallels, with your install ready to go:
That was very easy. But that raises the next question: Am I licensed for this Windows 11 installation, or do I still need to buy a license? A quick check in Settings confirms that:
So no license, but that’s pretty much as expected. They can make it easy to install, but it’s up to you to pay Microsoft.
As before, performance is fine. Sharing a folder from your Mac into the Windows VM works just fine (although I don’t remember if that was supported before — regardless, it works now). So everything is pretty much as you would expect.
Of course I always want to see the bare metal options, e.g. PXE, since I used these for testing. So I can get into the firmware screen:
Weirdly, even though I can see the PXE option in the “Boot Manager” menu, I can’t boot to the Linux shimaa64.efi binary. It seems to be a Secure Boot limitation, although the same binary loads just fine from an attached USB key. Puzzling, but not the end of the world.
VMware Fusion 22H2 Tech Preview
This one feels like it’s been in a “Tech Preview” state forever, much longer than I would have anticipated. But as you would expect from VMware, they at least share more detailed information about what’s new. The blog post for the 22H2 release goes through the list. The biggest change: significant changes to support Windows 11. While it felt like VMware was previously biting their tongue when discussing why they didn’t support Windows 11, this time it’s different. If you read through the VMware Fusion 22H2 Tech Preview Testing Guide, you can sense their frustration with Microsoft:
There are several ways to obtain an ISO for Windows, including from private partner programs that Microsoft offers. Users who have valid licenses should have been provided a method to acquire a Windows 10 or 11 ISO file from Microsoft.
In other words, “don’t blame us for this mess, blame Microsoft — use whatever mechanism you can to get an ISO so you can install the Windows 11 OS on ARM64.”
But hey, now since Parallels has figured this out (maybe they’re part of that “private partner program”?) I can at least use the ISO that they downloaded to go through the process.
I can then go through the rest of the wizard screens (a little more advanced than the Parallel’s experience):
But weirdly, it won’t boot from that ISO. It just acts like there isn’t an ISO there and instead tries to PXE boot. That PXE boot works fine, so I can load a custom boot image:
So that’s a positive for VMware Fusion — at least for me, that achieves my primary use case. But for “normal” people, they’re going to want something easier. At least now the rest of the Windows 11 support is there (e.g. TPM) or in progress (e.g. installing vmxnet3 and WDDM drivers as part of the VMware Tools), so it’s a step forward, but still not yet to a “ready to release” state.
So how do you get Windows 11 running on this? Well, there is the same way I described in my previous post: Download the latest Insider ARM64 VHDX file from here, then manually create a new VM and attach the VHDX file to it as a disk.
The firmware options are pretty much unchanged from the previous Tech Preview, with the initial firmware screen still looking incomplete:
There are now three network boot options, even though the first two both seem to do IPv4 PXE booting, so still no HTTP boot option:
And USB booting still works fine, so maybe that’s another alternative to install Windows 11? Easy enough to try, let’s copy the contents of the Windows 11 arm64 ISO (the one that Parallels downloaded) to a FAT32-formatted USB key, and then see if we can boot from that.
So yes, that works great. There were no messages about not meeting the Windows 11 hardware requirements, so it was a nice and clean installation. Of course as the Tech Preview documentation mentioned, you won’t have networking during OOBE and Windows 11 requires that, so you have to press Shift-F10 to open a command prompt, then run “oobe\bypassnro” to disable that requirement. (You won’t need to do that if you are using Windows 11 Pro 21H2, as it will still let you choose to create a local account.)
It is puzzling that the ISO option doesn’t work, but it is a tech preview so I guess we can cut them some slack.
As noted in the Tech Preview guide, you have to manually install the VMware Tools drivers at this point (also likely to be addressed before the official release):
There continues to be progress. You can run Windows 11 ARM64 on an M1 Mac using Parallels or VMware, and you can buy a product key to activate it. If you want “easy” and “now,” Parallels is probably what you want. VMware continues to make progress, but unless you’re like me and are looking for good (working) PXE support it’s probably not quite ready for most people.