x86 and x64 apps do also run under Windows ARM. The main difference is, that if you want to run x86/x64 Windows on your M1 you would need to emulate the whole machine including Windows, while on Windows ARM only the application is emulated but not the OS - which is significantly faster - as you can figure.
So if you want to shoot yourself into the foot, you want x64 Windows running on the M1 instead ARM Windows.
To clarify, I believe the desire for x64 Windows is merely that things don't have to be emulated and that x64 capability exists in stable form. I think many people (including the one whose comment I was defending) don't lump together the fact that getting x64 Windows to run on Apple Silicon Macs would require emulation that's, as you correctly put it, a subpar experience.
I do believe that Windows 10 for ARM64 can get to the degree of Windows 10 for x64 in terms of capability, but it's hard to argue with the fact that it really isn't there yet. x64 app support is a start, and a decent hardware (or even virtualization) platform is good too. Microsoft needs to play their hand carefully and Apple needs to go along with it. Again, everyone wins if they do.
Windows ARM has a triple WOW (Windows on Windows) layer architecture - for x64, x86 and ARM32.
Microsoft included the WOW layer for ARM32 because it can now run Apps originally compiled for Windows RT. So if you check the App Store you will find quite a few apps from Windows RT times.
I've seen a few of those still. I just figured the Windows RT versions died off. I have a Surface RT lying around that I occasionally mess with. You can hardly download or run anything on it as newer versions of many apps are no longer compatible with Windows RT.
Thats one reason but a minor one. The main reason however is that x86 is relatively emulation unfriendly on modern RISC processors. The x86 ISA only has very few registers and is using many instructions with memory operands - so it is a very bad match for a load-store architecture with many registers.
Crazy. But makes sense. Makes it all the more impressive that Apple was able to get Rosetta 2 working as well as it did; but also further explains why 32-bit Intel app emulation was never going to happen.
Are you sure? I thought Office on Windows on ARM was x86 “optimised for ARM64” rather than native.
Nope, it's native.
Yes, I was also wondering whether, if MS didn't make ARM Windows available at retail, they might consider selling to Parallels and VMware. Apple being an OEM woudn't count, though, since Apple isn't installing this on their machines.
Microsoft could very easily do at least one of the following four things:
1. Create a pre-built VHDX with all of the drivers needed for Apple's Hypervisor framework (which is what both Parallels Desktop and VMware Fusion use on Apple Silicon anyway) baked in and sell it for Apple Silicon customers looking to virtualize Windows 10 for ARM64.
2. Work with Apple to bring Windows 10 for ARM64 to the Mac App Store as a direct booting solution. The Windows 10 for ARM64 drivers for Apple Silicon Macs as well as the custom Windows bootloader that is compatible with iBoot (made in partnership between Apple and Microsoft) would be baked into the installer. Apple would supervise and sanction the installer on the Mac App Store (no differently than it has putting its own OS installers on the Mac App Store for the past nine years). The installer would be a cross between your average macOS installer app and the current Boot Camp Assistant. However, there'd be no need for installing the Boot Camp Support software at any point because it would already be baked into the installer
3. Release an ISO for Windows 10 for ARM64 and license it specifically to Systems Builders and/or Apple Silicon Macs.
4. Begin to include ARM64 in with retail copies of Windows 10 (which already include both x86 and x64 versions in tow).
My money is on one or both of the first two. The latter two seem unlikely.
So it's kind of funny, but I've been playing with this on and off today, and now I've had some time to install some more apps to try.
It's like... this is what the Surface Pro X should have been. Quiet, cool, fast, responsive, works well (not perfect) with x86 and x86-64 apps.
So I don't know. It feels weird to me that the best platform for Microsoft's Windows 10 on ARM to shine may actually be inside Parallels/VMWare on an M1 Mac. I won't hold out hope for Bootcamp but this... this is something I think Microsoft will have to consider very seriously. It has that much promise. At worst, it'll help them sell a few more Windows 10 licenses.
I don't believe we'll see Boot Camp in its current Intel-based incarnation. But I do believe that a more elegant direct/dual booting solution IS possible and that Apple would be foolish to not aid in its release. Similarly, Microsoft really needs to get its OS on Apple Silicon Macs. Virtualization is good, and certainly the best ARM64 performance out there, but direct boot will certainly be faster.
The Qualcomm soc in the Surface Pro X is not good enough.
I'm disappointed on the number of native arm64 apps available on Windows. You can do nothing without emulation, and Windows on ARM is out for at least a year.
Apple Silicon is only available to the public for a month and we are already getting lots of support.
There's a difference between Apple's and Microsoft's approaches here though.
Apple is saying "we're going to stop producing x86-64 hardware over the next two years in favor of hardware running not just ARM, but OUR OWN version of ARM; we'll continue to support x86 for years to come, but not forever"
Microsoft is saying "we would like to support both x86-64 and ARM64 but we're not doing anything nor producing anything in the way of hardware to incentivize developers to produce apps for both architectures except for reliance on emulators"
Those are two completely different messages. Plus, for better or worse, Apple has a long history of dictating change on their own terms and having their third party ecosystem follow them because they are given no other option. The problem with Microsoft's approach is that they're giving developers the option to ignore Windows 10 for ARM64 outright as it's only on a few devices, the best of which (Surface Pro X 2nd Gen) is still not all that great.
Thanks for explaining that — I was not aware of that. Does the Windows Insider program off the options of "Insider Slow" and "Insider Fast" like the Office 365 Insider program does?
Yes! It has both options!