Whilst what you say is true for Windows RT, Windows 11 on ARM64 absolutely can run x86 and x64 software [0]. Kernel mode software needs to be built for ARM64 but most user mode software should just work.
For what it’s worth x86 emulation predates Apple’s Rosetta 2, and x64 emulation was made available at about the same time [1].
[0] https://learn.microsoft.com/en-us/windows/arm/overview#suppo...
[1] https://blogs.windows.com/windows-insider/2020/12/10/introdu...
This is where apple made it transparent: rosetta 2 is completely invisible thanks to the introduction of the x86 memory model on M* chips that all other Arm socs lack, and that rosetta 2 leverages.
https://learn.microsoft.com/en-us/windows/arm/apps-on-arm-x8...
> M* Apple on the other hand can run most x86 era MacOS software;
Except for dropping 32bit libraries and all that?
> people who were using Intel Macs to Get Stuff Done(tm) can use newer M* Apple Macs to Get Stuff Done(tm).
Nope. Quite a few of those people needed bootcamp to get some software to run. Bootcamp is dead now and you are encouraged to run virtualized windows on arm; does x86/x64 emulation work properly inside such a VM?
However, some would argue that if you need windows software, then you should not buy a mac in the first place. And I would argue it's microsoft's job to get windows running on M*, not apple's.
1: https://developer.apple.com/documentation/virtualization/run...
Not that that helps in making everything work, but I just had to correct who's emulating what.
> Except for dropping 32bit libraries and all that?
32 bit libraries were dropped by Apple years ago when they were still all x86. Still an ass move, but again had to correct.
That was the question. For instance, as far as I understand WSL generally does not work inside VMs (because WSL2 or 1 or whatever number transparently uses another VM itself). So I wasn't sure whether WoW64 does work inside VMs, glad to hear it does.
The claim was that you have great backward compatibility due to Rosetta ... except that due to 32 bit libraries that is not actually as useful as claimed. Not sure what your correction is?
32 bit apps were dropped in Mac OS Catalina in 2019, before the M1 was even hinted at. You had an x86 only Mac OS with no 32 bit support already.
Also 32 bit apps were marked as deprecated in High Sierra, some time in 2018.
for WSL1 - virtualization is not used, it's more like syscall emulation
That has got nothing to do with ARM. Apple decided to drop support for 32 bit apps several years before they introduced M1.
You still can emulate it.
Most people use computers to Get Stuff Done(tm).
Windows RT can't run Win32 and ARM can't run x86, at least not without significant caveats; people can't use Windows computers like that to Get Stuff Done(tm).
M* Apple on the other hand can run most x86 era MacOS software; people who were using Intel Macs to Get Stuff Done(tm) can use newer M* Apple Macs to Get Stuff Done(tm).
Computers are tools, their sole purpose is to enable their users to Get Stuff Done(tm). It is the natural order of the universe that Windows ARM computers, unable to Get Stuff Done(tm), completely and properly failed to capture market share.