Developers boot Windows 10 and Linux via virtualization on Apple Silicon Mac
Ever since Apple announced its custom ARM-based chipset for the Mac lineup, the Apple M1 SoC, modding enthusiasts have waited for the platform to be blown wide open. Users have theorized for a long time now whether it would be possible to boot Windows or standard Linux distributions on ARM Macs. After all, the mainline Linux kernel and Windows 10 are no strangers to the ARM world. All that’s left is the blood, sweat, and tears of developers interested enough in deciphering Apple’s custom ARM implementation. Now, thanks to the efforts of multiple developers, it is possible to boot Windows 10 as well as Linux on the Apple Silicon Mac, albeit via virtualization.
A picture is worth 1000 words.
✓ x86 emulation is fully functional.
✓ It’s really on an M1
✓ Virtio-net works
✓ RDP works pic.twitter.com/dz9446DvPD
— Alexander Graf (@_AlexGraf) November 28, 2020
Alexander Graf, an engineer from Amazon on AWS, has been fiddling with the popular open-source machine emulator and virtualizer QEMU to add Apple Silicon support. He has put a ton of work into making the necessary Hypervisor framework patches to the QEMU codebase in order to run both Linux and Windows as guests on M1 Macs. We’re now at a point where almost all basic functionality, including virtualized audio and network interfaces, work. What’s even more interesting is that traditional Win32 apps built for the x86 architecture work just fine on the guest Windows 10 VM, thanks to the WoW for ARM64 emulation layer.
In case if you wonder how Apple Silicon virtual machine behaves with moderate to intensive workload (or “how Windows runs on it”), here’s a picture: pic.twitter.com/68osR5uGIN
— Sunshine Biscuit at scale 🍪 (@imbushuo) November 28, 2020
Several developers have banded together to fix the remaining bugs and make the installation process more user-friendly. Installing a virtualized instance of Linux or Windows 10 on your Apple Silicon Mac does not remove the main OS installed on it, so you don’t need to worry about breaking anything. If you want to get started with Windows 10 on your shiny new ARM Mac via QEMU, check out the video tutorial below.
There are still significant barriers before we’ll see Windows or Linux natively booting on ARM Macs, though. According to Linux creator Linus Torvalds, the closed nature of the integrated GPU and other components in the M1 SoC makes the porting process a bit complicated, “…unless Apple opens up“. While Apple isn’t planning to support Boot Camp on M1-based Macs, the idea of Linux or Windows running on a power-efficient, yet extremely capable ARM platform is utterly intriguing for anyone who prefers Apple’s build quality but doesn’t want to limit themselves to macOS. We’ll definitely keep an eye on the modding scene to see how these developments progress, and hopefully how it ends up benefiting the x86-to-ARM transition phase in computing.
Thanks for working so hard on these patches @_AlexGraf! They work really great. Here’s Fedora 33 booting with UEFI/ACPI under QEMU on my M1 MacBook Air https://t.co/T1fA6YKEVt pic.twitter.com/3cPhZONKIq
— Jon Masters 🏴☠️ (@jonmasters) November 30, 2020