5 ms·
If apple uses its own chips, I would assume that they would be aarch64 and not x86_64. Also, Microsoft has some magics for executing x86_64 binaries on aarch64
by Skunkleton 9y ago
If apple uses its own chips, I would assume that they would be aarch64 and not x86_64. Also, Microsoft has some magics for executing x86_64 binaries on aarch64 with good performance, so Apple may have a similar technology. We could end up with another situation similar to the Power->x86 transition that happened back in 2006.
Or it could be nothing. This is a pretty thin article.
- masklinn 9y ago> If apple uses its own chips, I would assume that they would be aarch64 and not x86_64. Also, Microsoft has some magics for executing x86_64 binaries on aarch64 with good performance, so Apple may have a similar technology. They definitely do have OSX running on ARM64, they had OSX running on x86 for years before the switch (in fact they had OSX running on x86 before it even was OSX, NeXT ran on x86, SPARC, PA-RISC and 68k, PPC is the one Apple had to add), they've already gone through two architectural migrations (68k -> PPC and PPC -> x86) and by all accounts the iOS core is very much shared with OSX, it wouldn't make sense not to port OSX along the way.
- spitfire 9y agoNeXT actually had prototype PPC hardware, so they may have had that at the ready too. Less developed and with less driver support of course.
- rlkf 9y ago> they had OSX running on x86 for years before the switch (in fact they had OSX running on x86 before it even was OSX Although NeXTStep ran on x86, the MacOS build on x86 was John Scheinberg's personal skunkworks project until it became Marklar in 2001 (and then kept under the hood for another four years). Mind, Darwin was always written to be portable, but it wasn't a deliberate strategy to take it to Intel. This time around though, I too reckon that they have already a MacBook running on an A10X in the labs.
- gsnedders 9y agoWhat I'm really curious about is what they've still maintained: what they publicly ship now is all little-endian; are they still maintaining any big-endian port? Do they have a big-endian ARM port? Have they preserved the big-endian PPC port?
- oddevan 9y ago> Also, Microsoft has some magics for executing x86_64 binaries on aarch64 with good performance, so Apple may have a similar technology. I'm reminded of the patent-sharing agreement between the two. Or, given MS' diversification, they may be willing to directly license the tech. Making the x64 -> aarch64 translation as robust as possible has benefits for both companies, and they're not nearly the bitter enemies they used to be.
- vetinari 9y ago> Microsoft has some magics for executing x86_64 binaries on aarch64 with good performance, No, they have tech for executing i686 binaries on aarch64, not x86_64. Big difference. Meanwhile, High Sierra is the last macOS release to support 32-bit binaries.
- saagarjha 9y ago> High Sierra is the last macOS release to support 32-bit binaries "Without compromise". We'll see what this means later, but most likely it'll mean that macOS won't ship with a 32-bit runtime and you'll be able to download as you do with Java.
- SyneRyder 9y ago> ...Microsoft has some magics for executing x86_64 binaries on aarch64 with good performance... I was just listening to a Windows Weekly podcast about that, and its limited to 32-bit x86 binaries only, no 64-bit support. They also said its "unusable" for 32-bit apps (in particular Chrome), because you can watch the system drawing the windows of x86 apps on the screen. Watching the video, they seem to be exaggerating a bit with "unusable", but Chrome does look sluggish, and the startup of "DrRacket" and its window redraw does look very slow too. https://www.youtube.com/watch?v=LfYcCSRMkVI&t=60m55s https://www.youtube.com/watch?v=LfYcCSRMkVI&t=60m55s
- Skunkleton 9y agoAhh that is a bummer. I only read about the translation stuff when it was first announced, before there was much info on the details. Edit: After watching the video, that didn't seem too bad. Perhaps it would work well enough on top of a beefier ARM processor? Of course the lack of x86_64 support is another issue that may not have a reasonable solution.