We build what we love (or "how to save us from an x86-only world")
dieblinkenlights.com
dieblinkenlights.com
The answer to this question is that a vast number of applications that only run on the iPhone's ARM have been developed in the last few years. Also a large number of web applications that run fine on on both ARM and x86 have been developed.
The dying architecture is actually x86 because Windows is becoming irrelevant for consumers. Not overnight, but it's happening. OS X runs on x86, but I wouldn't be too surprised if Apple some day moves their laptops to ARM, considering they have to do something interesting with their new, homegrown chips.
Unfortunately, the ARM's dominance can have a negative effect in the diversity of the segment, thus slowing down evolution on mobile platforms. Still, until app availability weights the market down, mobile is more resistant to fragmentation and friendlier to hardware diversity.
I would be delighted to see an ARM-based full-featured notebook, running an open and portable userland, but I fear Apple is not a company that will favour diversity. Given time, we may end up with the same problems we face today.
We need more than one alternative to x86. We need a fragmented market.
It's a little embarrassing the coolest processors we have today are more or less binary compatible with processors of the 70's and 80's and that the operating systems they run follow fashion that was conceived at that time.
I have said it before: where are massively-parallel, hardware-assisted garbage-collecting connectionist machines of today? "Nowhere", we say, mostly because they can't run Windows.
What happened to Alan Kay's "if you are serious about software you should build your own hardware" idea?
And just imagine how happy would Intel and AMD's engineers if they could make all the silicon around the execution units of their processors do useful stuff instead of emulating past 8086's 80286's, 80386's, 80486's, and Pentium I, Pro, II, III, 4, MMX, SSE instructions (and quirks) for binary compatibility's sake.
Contrast aggressive register optimization for function calling on most RISC boxes with SPARC's moving register window or the hoops you have to jump through on register-starved instruction sets like x86s.
Look how long it took for multiprocessors to become mainstream. It's no coincidence it only happened after Windows NT displaced Windows 9x as the most common desktop OS. In fact, it only happened when Windows 9x's share became neglectable.
Does this not apply (anymore) to ESX? I imagine it's improved somewhat, but AFAIK it can't match "real iron" speeds. I suppose that only gets worse as you add SANs, SSDs and other fun stuff.
As to "buggy" - well, I consider anything with repeated severe security issues to be buggy. Just search for "VMWare vulnerability".