> That's a bit of a re-write of history. Mac OS tried to throw away all backwards compatibly on day one but major software vendors told them to pound sand so they had to spend another year building out Carbon.
Yes, and other than that the only non-workaroundable - but reasonable - break has been the removal of 32-bit x86 support. The PPC->Intel and Intel->ARM transitions had fully fledged and (at least in the latter case, didn't have a Mac at PPC time) high performant and fully functional runtime emulation/translation to ease it.
> Microsoft had a fully functional build of Windows 7 for ARM a long time ago.
That depends on your definition of "fully functional". Apple invests insane amounts of effort to tape out good hardware that isn't riddled with weird bugs and edge cases. They don't even publish much documentation, and yet not even a dozen people (iirc, please correct me if wrong) managed to reverse engineer enough to get support merged to Linux mainline.
In contrast, the utter bullshit that the rest of the ARM world dares call a CPU is so riddled with bugs that it's a nightmare even for the vendors to keep their custom kernel patches / BSPs up to date, and completely forget about ever upstreaming it to the Linux kernel. And now imagine someone has to write Windows drivers for all that buggy crap.
The completely sorry state of how the entire "embedded" world works is holding everyone back so immensely that it takes companies the size of Apple and Amazon to show that the problem isn't ARM itself - and unfortunately, Apple doesn't sell to anyone else and Amazon only makes server CPUs, which means there is zero market pressure, neither for a re-imagine of x86/64 without legacy crap in the instruction set and die, nor for anyone with an ARM license to tape out a SoC at above "barely works, fix the rest in software" quality and decent open source Linux and Windows drivers, nor is there much pressure on AMD/Intel to improve because as long as there is no quality competition from ARM they don't have to fear anyone else eating their lunch.
Sorry for the rant, this topic has annoyed me ever since I tried putting an at-the-time modern kernel to an at-the-time-current Mediatek based phone and miserably and utterly failed a decade-ish ago. And nowhere I have looked at in the embedded space since then has shown me any sign of improvement. To the contrary, even projects as popular as Raspberry Pi couldn't arse Broadcom enough to check if the PCIe implementation passed standards validation, they only cared if the USB (and iirc, wifi too) chipset worked. J F C