ARM-based MacBook Air test sample spied
reghardware.com
reghardware.com
The new interconnects on the Intel chip should ensure that both CPUs can access RAM and various peripherals without performance suffering. Apps can then choose whether to be run as native ARM or x64. The core apps will all run on ARM, allowing x64 chip to sleep and the new Macbook Airs to boast 20+ hour runtimes when performing core tasks only.
I haven't seen anyone else with this theory, but it makes a great deal of sense that Apple would push this. They have control over most of the stack: the ARM CPU, the kernel and the motherboard design. More details here - I'd be interested in hearing if others think this is feasible:
http://grack.com/blog/2011/05/07/how-apple-can-make-use-of-a...
http://en.wikipedia.org/wiki/Symmetric_multiprocessing#Alter...
http://www.nallatech.com/Latest-News/xilinx-demonstrates-int...
http://www.eetimes.com/electronics-news/4207772/Xilinx-demos...
That said, I'd be very surprised if Apple implemented this initially in the MBA first. Maybe the MBA will move to A5, then down the road, the high-end laptops will go dual Ax/x86. One approach might be to expect a multi-core Ax machine with a single Ax core dedicated and custom designed to emulate an x86... Might be worth keeping an eye on Apple job ads, since we know they have used emulation techniques in the past, such as Rosetta.
I was going to post and suggest it, but was too afraid of looking like a doofus.
On the one hand, VMWare Fault Tolerance keeps two virtual machines on two separate hosts in sync down to the CPU instruction. VMotion moves running processes around live. Suspend to RAM and Disk do work on running processes, and Apple have a two-video-card model in production, and 32/64bit tolerance, and have had PPC/Intel combined tolerance, and dual core, dual CPU computers exist. These are all mildly supporting evidence that such low level trickery and successful complex solution might be possible.
On the other hand, I have no idea what two different classes of CPUs working on the same motherboard would mean, or how much complexity and bugs it would introduce, or how much cost. Or whether they'd be better off spending the effort on reducing power use somewhere else. Or whether they could deal with running the kernel on Arm and Virtualbox on Intel and still dissipate the heat while also having much reduced battery life.
My biggest counter is that low level stuff seems to be a lot harder in practise than the higher level discussions always make it sound.
Seriously though, what are the implications for virtualization software (Vmware, VirtualBox, etc) on an ARM platform?
I'm all for innovation, but the fact that MacOS/Linux/Windows/BSD all currently support one common architecture has been very convenient, in recent years.
Could you explain that?
There are ways to use the transistor surplus an ARM code has (it's much simpler than a comparable x86) to hardware-assist the translation, but, by the time you have a functional silicon, you will be in the x86 size range, negating all the advantages ARM has.
Microsoft already tried to support Windows on two different architectures (x86 and Alpha) and failed when application developers never bothered porting to Alpha. They're not about to repeat that.
VirtualBox has been a boon for me for virtual server environment testing.
When it comes to simulating servers, I've been opting for things like lxc and openvz. OSX should be able to use BSD's jail.
A working Macbook-anything running an A5 chip would be extremely useful for Steve Jobs when negotiating terms with Intel, even if in the end he "burns" it.
This would rule the casual, unsophisticated user market. HN readers might have one as a second machine, but would probably get a "real" MacBook with the x86 and the freedom to code.
[1] Initially I thought MacBook Light, but then that's why I'm forbidden to name products. Express is already in the Apple product vocabulary and doesn't carry a negative connotation.
[2] Require a cryptographic signature from the Mac App store before any code can be executed. Remember, this gets complicated when you have interpreters on the platform, you have to control the input to them as well or only permit them in sandboxes. (Developers get some sort of testing exemption.)
[3] I don't think touch screen is a part of it. As great as it is for things on a tablet, the ergonomics on a laptop are awkward, and you need to design the application UI twice for people with and without.
A laptop that supported desk accessary (http://en.wikipedia.org/wiki/Desk_Accessory)/Side kick (http://en.wikipedia.org/wiki/SideKick)-like use of iOS apps would be a way to lure existing iOS users to such a device.
And for naming: the OS would be Mac OS X Singapura :-)
Granted, iOS is important and runs ARM exclusively, but I would've expected more love for the x86 backend given how important the laptop segment is for Apple. It made it seem like x86 was not of long-term importance for Apple.
Just about every native Mac app these days was developed and built on Xcode, and Xcode already supports ARM targets. The only remaining obstacle is porting AppKit to ARM, and if (as the original story suggests) Apple already have hardware running OSX-on-ARM, they must have already done that. That means most Mac apps can be ported from x86 to ARM with little more effort than changing the target in a dropdown list and hitting Build.
(For those not familiar with Mac development: AppKit is the GUI library, part of Cocoa, used in most modern Mac apps. iOS apps use a slightly different GUI library, UIKit. At the moment AppKit only targets x86/x64 and UIKit only targets ARM, at least in the officially released versions.)
Microsoft can do something similar with .NET, as others have pointed out, but .NET apps don't dominate the Windows software ecosystem to anywhere near the same extent that Xcode+Cocoa dominates the Mac one.
(One thing I'm quite certain we're not going to see is the hypothetical dual-CPU ARM+x86 machine that some people are speculating about. For the simple reason that, if you're going to put an x86 in the box anyway, why bother with an ARM as well?)
I know there have been some attempts at this kind of laptop-tablet form factor in the past, but has any manufacturer ever actually managed to solve the hinge problem?
Once battery is good enough, weight optimization is the next step. I bet these will be beyond ultra light.
If Apple keeps the same size of the Macbook Air you'll probably see ~100% improvement in battery life compared to the current Macbook Air. If they decide to make it even thinner and lighter, than it won't gain that much in battery life, but I'm sure it will still be a significant improvement (definitely more battery life than an iPad).