Xen and The Art of OS X Maintenance
[Update: See also my follow-up clarification, as this post was somewhat confusing.]
Even while writing the last post, I knew I was missing something, something biting at the back of my brain, so I was quite relieved to wake up today with the answer. It may not be the real answer to the Apple/Intel mystery, but it’s my contribution ("the butler in the library with the candlestick") to the game— Apple’s power-play is not to run OS X on generic Intel hardware, but to run Windows apps cleanly on OS X. Others also have suggested "Windows apps on OS X," but I was thinking specifically of Xen, an open-source VMware competitor which has been gaining a lot of industry support recently (and is already integrated in Suse 9.3).
Unlike VMware and VirtualPC which require full machine emulation, Xen instead (currently) works by modifying the OS source itself. But wait— What I remembered this morning was this entry in the Xen FAQ:
1.4. Does Xen support Microsoft Windows?
Unfortunately we do not currently support Windows; the paravirtualized approach we use to get such high performance has not been usable directly for Windows to date. However recently announced hardware support from Intel and AMD will allow us to transparently support Windows XP & 2003 Server in the near future. We are working on this and intend to have support available by the time the new processors are available.
(emphasis added by me) So by switching to use Intel rather than PowerPC CPUs, Apple could suddenly tap into this new space where Windows apps run cleanly on OS X with much better performance than current VMs. Since Darwin, the underlying base of OS X (much like DOS was the underlying base for Windows 3.0), is already open-source as well, Apple could integrate Xen support easily for some dramatic results. And finally escaping the "lack of 3rd party software" criticism that’s hounded Apple since the earliest days of the Apple-Wintel religious wars would be a huge announcement for a WWDeveloperC.
Hey, since Darwin’s already available for x86 and porting the rest of OS X would be a glorified recompile, how mind-blowing would it be for Steve Jobs to stand up on Monday and show Intel hardware running Windows apps on OS X?? These are the exactly the kind of theatrics that Steve Jobs would truly relish (not to mention, he’d love an Apple word-play on zen/Xen), and you developers know how relatively easy that would be to demo when you put all the currently-available pieces together.
Thanks to all of you who wrote in with great feedback to the last post. (And yes, as one of you pointed out, I need to enable Trackback soon.) Ole Eichhorn also emailed about Windows apps on OS X, and makes several good points there. He also has the best line summarizing the "OS X for generic x86" theory: "Supporting all the PCs out there in the world is a very big deal, essentially an impossible boil-the-ocean deal." Exactly.
Stephen (at an unnamed "G" company) wrote "Linux and others have proven that stability is not a function of the underlying chip, if properly implemented. " Very good point, and the BSD-based Darwin would already be more stable than early versions of Windows, undoubtedly. But I’m with Ole on this one— mass-market device support is essentially impossible. Steve Jobs would be destroying Apple in one fell swoop if that’s his ingenius gameplan. The market cap would ramp up in the short-term, but the support cost and brand devaluation over the long term would be drastic. You can’t out-Microsoft Microsoft. "Never get involved in a land war in Asia." David Lang pointed out that Microsoft is already facing a battle with Linux eating into its market share (especially elsewhere around the world); why in the world would Apple jump into the middle of that fire-fight?
[Later: Ahh, I misunderstood Stephen, who was not suggesting OS X on generic x86 machines but rather, that Apple using some Intel hardware would be stable. No disagreement at all there— in fact, BSD on its limited hardware support was unbelievably stable ten years ago. As long as you can pick the limited hardware, every OS can be very, very stable.]
Another reader (at an unnamed "A" company) wrote to point out Apple’s weakness in the notebook space, where Intel’s strength lies:
Where Intel has a huge advantage over MIPS, Sun/SPARC, AMD, IBM and Freescale is with the Pentium M. The only thing that approaches it in MIPS/watt is XScale which doesn’t scale as high (though might make a nice micro-mini-subnotebook to bridge the gap between iPod & tablet).
He also writes that Intel and AMD will continue randomly trading the high-end benchmark of the day, but I think this runs directly counter to general geek consensus these days, that AMD is not only pulling ahead, but also doing so in a way that suggests a serious technical-excellence advantage for the next 3-5 years. David also pointed out that Apple fans brag about dual-G5’s like PC users brag about dual-Opterons. "I don’t see that tranferring to Pentiums or Xeons." Exactly.
And finally, today’s Serendipity award goes to Wes Felter, who seems to have mentioned a Xen research paper and Apple-Intel in sequential posts without connecting the two: "A Yonah-based AlBook running both OS X and Windows (via VMware) would mean one less thing for me to carry, though." Yep, and Xen integrated into Darwin is one less app (VMware) too.
Of course, the Xen theory perhaps answers the "Intel vs. PowerPC" speculation, but doesn’t address the "Intel vs. AMD" question, given that both AMD and Intel are adding the hardware support for Xen. So at this point, if it comes down to generic "market speed and pricing" type terms, then I maintain my original point, that Apple seriously lost a great opportunity.


