I’ve done some posts on x86 vs ARM over the years, most recently on the new Microsoft Surface Pro X, which runs a ‘normal’ desktop version of Windows 10 on an ARM CPU, while also supporting x86 applications through emulation. This basically means that Microsoft is making ARM a ‘regular’ desktop solution that can be a full desktop replacement.
Rumours of similar activity in the Apple camp have been going around for a while as well. Ars Technica has run a story on it now, as it seems that Apple is about to make an official announcement.
In short, Apple is planning to do the same as Microsoft: instead of having their ARM devices as ‘second class citizens’, Apple will make a more conventional laptop based on a high-end ARM SoC, and will run a ‘normal’ version of macOS on it. So again a ‘regular’ desktop solution, rather than the iOS that current ARM devices run, which cannot run regular Mac applications. At this point it is not entirely clear whether these ARM devices can also run x86 applications. However, in the past, Apple did exactly that, to make 68k applications run on the PowerPC Macs, for a seamless transition. And they offered the Rosetta environment for the move from PowerPC to x86.
Aside from using emulation/translation to run applications as-is, they also offered a different solution however: they provided developers with a compiler that would generate code for multiple CPU architectures into a single binary (so both 68k and PPC, or both PPC and x86), a so-called Fat binary or Universal binary. The downside of this solution is of course that it requires applications to be compiled with this compiler, which rules out any x86 applications currently on the market.
In this sense it does not help that Intel is still struggling to complete their move from 14nm to 10nm and beyond. Apple can have its ARM SoCs made on 7nm, which should help to close the performance gap between ARM and high-end x86. I suppose that means that Intel will have to earn its right to be in Macs from now on. If Intel can maintain a performance benefit, then x86 and ARM can co-exist in the Mac ecosystem. But as soon as x86 and ARM approach performance parity, then Apple would have little reason to continue supporting x86.
Interesting times ahead.
Apple did initially ship a PPC emulator (Rosetta) for OS X on x86 machines, but they dropped it with 10.6, for what it’s worth.
Ah yes, you are right. I do remember that Rosetta name now, but somehow it had completely slipped my mind. I will modify that part. And actually, there was also a fat binary for 68k and PPC back in the day, so fixed that as well.
I sure hope Apple doesn’t drop Intel – otherwise it’s out the window with Bootcamp and Windows on a Mac. And I do like my Bootcamped, hybrid “Wapple” systems.