Why OS X is on the iPhone, but not the PC
 
Some analysts are puzzled as to why Apple hasn't started selling Mac OS X for other vendor's PCs. Others are confused by Apple's latest announcements regarding the iPhone; despite running a specialized version of its operating system--which Apple seems to be calling OS X, and which some pundits like to compare to WinCE--it will not immediately offer third party developers the ability to create and distribute their own iPhone applications.
 
The reason they're so flummoxed is that Apple's strategies don't follow Microsoft's. How could any company succeed without playing by Microsoft rules? As everyone knows, Microsoft owns more than 90% of the PC operating system market. It also appears to own the markets for PDAs, phones, tablets and other gadgets.
 
So why isn't Apple copying this obvious path to success? The answers lie deeply buried in thirty years of tech history involving Apple, Microsoft, NeXT, Sun, HP, ARM and others.
 
The Rise of Windows
As previous articles have pointed out several times before, Microsoft's share of the PC market with Windows was largely handed to the company by PC makers back in the late 80s.
 
IBM got things rolling by licensing Microsoft's DOS in 1983, but making the key mistake of not licensing it exclusively. That allowed clone makers like Compaq to duplicate IBM's PC hardware, license MS-DOS, and sell a functionally identical product.
 
IBM lost out big. Other PC maker followed suit, handing Microsoft licensing revenues for MS-DOS in exchange for not having to develop their own software.
 
As time went by, hardware vendors became completely dependent upon Microsoft for their sales, while Microsoft grew increasingly less dependent on any one hardware maker. Microsoft prospered while PC hardware makers fought it out with each other.
 
By 1990, Apple was one of the few independent system makers left standing. PC makers looked to Microsoft to deliver new software that could match Apple's look and feel and ease of use. The third version of Microsoft's efforts to copy the Mac, Windows 3.0, was the first to sell in any quantity, and the first to actually be bundled with new PCs.
 
Even though Microsoft had started work on Windows before Apple had delivered the Mac, Windows 3.0 was still far behind Apple's product, despite being a half decade late. PC vendors were still stuck having to buy it however.
 
The History of NeXT
Steve Jobs left Apple in 1986 to build his vision of the future of computer systems; his ideas differed dramatically from what executives at Apple wanted to do with the Mac.
 
Jobs started NeXT Inc., originally intending to create a software system that would bring new technology to all of the various computing platforms then in existence. That would result in a better Windows than Windows, before Microsoft Windows ever existed as a real product that anyone would want to buy.
 
NeXT wooed researchers and engineers from Apple and other companies. In the end, NeXT decided that no existing system--including the mid 80's PCs and Macs--had the hardware capacity to run the kind of software it wanted to build.
 
NeXT started work on building its own hardware, which would be tightly integrated with custom software designed to deliver its full potential. The result was the NeXT Computer, running the NeXTSTEP operating system.
 
Complaints from Apple regarding the poaching of its top engineering talent resulted in an agreement that kept NeXT from competing against the Mac in the consumer end of the market. That left NeXT to sell its systems to higher education and corporate customers, at workstation prices.
 
NeXT's product was phenomenally advanced. In an age before Linux even started as a project, NeXT incorporated a core OS architecture from BSD Unix, which ran upon a state of the art hybrid kernel called Mach.
 
Above that, NeXT built its own object oriented development frameworks, along with a display system based upon Adobe's PostScript language. NeXTSTEP incorporated a balance of solid industrial best practices and experimental new technology that had never been delivered to the mainstream before.
 
The hardware it ran on did the same. NeXT hardware incorporated specialized digital signal processors, more RAM, and greater graphics capacity than all but the highest-end workstations. It also made use of new magneto-optical discs to provide a middle ground between floppies and the hard drive.  
 
While the new system had a breathtaking price near $10,000, it was a good value when compared to the hardware features it delivered. Machines from Apple and IBM equipped with a fraction of the capacity were similarly priced, although they also lacked NeXT's software potential.
 
However, that high price tag, along with its oddball discs and inability to run much existing software, kept NeXT from making serious inroads into the mainstream.
 
Where NeXT did flourish--in academia, vertical rapid development environments, and among various intelligence agencies--it changed the world. Tim Berners-Lee used its rapid development environment to create the World Wide Web.
 
Dell used NeXT's WebObjects to power a new breed of dynamic web stores. MCI used NeXT software to power its revolutionary Friends and Family networking referral campaign, which other rivals couldn't match for years.
 
As the raw power in PCs began to catch up, NeXT abandoned its own hardware efforts and ported NeXTSTEP to the new Intel 486 PCs. By that time, however, Windows was already deeply intrenched, and PC vendors were bound to exclusive contracts that forced them to sell copies of Windows for every PC sold. That destroyed any potential for rival operating systems.
 
NeXT also tried to position itself as a workstation software vendor, porting its operating system to run on Sun SPARC and HP PA-RISC workstations. As a replacement OS, NeXTSTEP required users to choose between their existing, native applications, and a full NeXT environment. This didn't work for a lot of workstation and PC users.
 
The History of OpenStep
As a result, NeXT decided to pare down its offerings further. After dropping its own hardware, it next rendered its own core operating system optional, delivering just the development frameworks and operating environment of NeXTSTEP to run on top of a variety of host operating systems.
 
NeXT first partnered with Sun to deliver an operating environment that would run on Sun's Solaris instead of NeXT's Mach/BSD. This new product was called OPENSTEP. HP joined in to support OPENSTEP for its own HP-UX operating system, and NeXT also ported the environment to run on top of Windows NT, rather than replacing Windows entirely, in a product called OPENSTEP for Enterprise.
 
Along with its own ports, NeXT and its partners delivered the system as a open specification for interoperability, which would allow anyone to build their own port and run any software designed for the system. This was named, somewhat confusingly, OpenStep.
 
At a time before Linux had widely popularized the idea of being free and open to a mainstream audience, NeXT was offering a free and open version of its core assets, assets that GNU open source developers also recognized as a potential user environment for GNU/Linux. GNU planned to pair the Linux kernel and the GNU userland with the OpenStep windowing environment, resulting in GNUstep.
 
The incredible potential offered by OpenStep promised to bring the world an open, advanced, interoperable development system that everyone could use, from Windows shops to open source developers to high end workstation vendors. Instead, the supporters of OpenStep all suddenly abandoned the project as if it were the Tower of Babel.
 
Sun, the early backer, yanked its support when its own Java project began to garner attention. Just prior to dumping NeXT, Sun had bought up one of the main NeXT developers; its abandonment sealed the fate of Lighthouse Design, locking up a significant chunk of NeXT's unique software and throwing away the key.
 
HP dumped NeXT for the failure of Taligent. GNU developers casually regarded OpenStep as one possible environment among many other valid choices and never completed it.
 
By 1996, NeXT was headed nowhere. PC makers were all supporting Microsoft's brand new Windows 95 and NT, while interest in the far more sophisticated OpenStep waned.
 
Microsoft’s promise to deliver Cairo--a fantasy vaporware product which pretended to compete against NeXTSTEP--never appeared, but PC makers didn’t mind. They were happy selling DOS if customers would pay for it.
 
NeXT turned its attention to porting OpenStep into a web application server tool, where server-based OpenStep applications could deliver their results as dynamic web pages to remote clients. That product was WebObjects; while it was slowly gaining popularity as a powerful tool, it faced increasingly strong competition as interest in the commercial web began to skyrocket.
 
Apple Buys NeXT
In the final days of 1996, Apple bought up NeXT for its core operating system. Apple executives were impressed with the modern features of OPENSTEP, and hoped to quickly migrate Mac users to the new system running on Apple's own PowerPC hardware.
 
The company also planned to continue selling OSE to Windows NT users, and possibly expand the number of platforms available to OpenStep development. Apple began calling OpenStep the Yellow Box.
 
Apple's plans to deliver OpenStep met the same failure as NeXT's. The PC industry didn't want options, it wanted Windows. Sun just wanted to sell Java.
 
HP decided to buy up Compaq which had just bought up DEC; the resulting megacorp then decided to ditch all of its accumulated assets--including the highly regarded HP-UX, PA-RISC, True-64, and Alpha--for Intel's promised Itanium and a new version of Windows NT to run on it.
 
Dell and other vendors turned up their nose at WebObjects after it became associated with Apple, leaving the company with fewer Enterprise customers than NeXT had.
 
Meanwhile, Mac users and developers demanded that Apple maintain the Mac OS rather than replace it with some new and foreign system. Apple had initially hoped to port OpenStep to the Mac OS, but quickly realized that the existing System 7 was not up to the task.
 
Those events all turned Apple's plans for NeXT upside down. Rather than simply migrating to OpenStep, Apple decided to make NeXTSTEP look like the Mac. The first attempt, called Rhapsody, put Mac user interface conventions on top of a version of NeXTSTEP ported to PowerPC. It planned to offer a compatibility environment to run existing Mac applications, although software specifically designed for the new OS would run much better.
 
Principle Mac developers, including Microsoft, Macromedia, and Adobe, were all afraid that if their applications were relegated to a compatibility box, they would be forced to rewrite all their apps to run acceptably on the new system. They didn't want to invest a lot in doing this, because Apple was falling apart and Mac sales were plummeting.
 
Apple decided that the only way to keep existing Mac developers happy would be to entirely redesign the system to incorporate native support for existing applications. To do this, Apple froze Rhapsody and published plans to create a new system called Mac OS X
 
It would have all the features of NeXTSTEP, but also a modernized set of the classic Mac OS APIs which would allow Mac developers to do minimal work to get their existing applications to realize full use of the new power of the system.
 
The History of Mac OS X
Between buying NeXT in the final days of 1996 and the first commercial release of Mac OS X in 2000, Apple scrambled to rework the existing Mac OS 7.6 to have something to sell in the interim.
 
Apple was eaten whole by NeXT. Jobs, along with top talent from NeXT, reviewed at Apple's existing operational, marketing, logistical, and manufacturing failures and rapidly began to reinvent the company.
 
Extraneous hardware and software product lines were slashed to the core, resulting in a highly simplified Mac hardware lineup. The new Apple released revised versions of System 7: Mac OS 8 and 9.
 
The new iMac was unveiled, and later a new consumer laptop line. Efforts to create its own software and retail stores followed. Meanwhile, efforts to deliver upon the promises of Mac OS X continued at a furious pace.
 
It still took several years to get to the point where Mac OS X could be released in beta. The new OS was based upon the original NeXTSTEP, not the OpenStep specification shunned by the rest of the industry. That's because Apple didn't have its own OS to run OpenStep upon, and the system was dependent upon technology licensed from Adobe and others; in order to repurpose NeXT's technology for the mainstream Mac market at low cost, those dependancies had to be removed.
 
NeXT's Mach/BSD core OS had grown stagnant during the years of OpenStep, so Apple had to bring things up to date. Fortunately, the BSD code base had been separately maintained by open source developers, so Apple could incorporate a decade of modern, proven technology updates into its own system without writing everything from scratch. That left Apple the resources to update NeXT's object oriented frameworks, called Cocoa, and incorporate a polished version of the Mac OS libraries, called Carbon.
 
Additionally, Apple had to redesign the system's graphics rendering engine to avoid use of Adobe's expensive PostScript. It chose to base the new system on the modern display model of PDF, which Adobe had release as an open standard.
 
Since it was starting over, Apple incorporated entirely modern compositing features so that everything drawn in Mac OS X could escape the legacy restrictions of Mac OS graphics routines dating back into the 80s.
 
The result left Apple in 2000 with a brand new OS built upon modern design principles current in 2000, not 1984. So much was new in the system that it took several years before Mac OS X could be optimized enough to replace the old Mac OS 9. By 2002, Mac OS X Jaguar became Apple's standard operating system.
 
With the foundation laid, Apple rapidly improved upon Mac OS X features, enhancing support for powerful new frameworks that handled more and more of the routine bits of application development, and expanding graphics capabilities to push more processing work into the graphics card.
 
Apple also greatly expanded its own application development, with a suite of consumer apps and a fleet of pro apps. This experience pushed more practical support for development into the OS.
 
Within five years, Apple's new OS became regarded as stiff competition to Microsoft Windows.
 
In 2005, Apple announced a surprise: Mac OS X had retained support for multiple hardware architectures that had been used by NeXT to rapidly target new business. Within six months, Apple began shipping Intel based Macs, and within a year was able to transition its entire product line.
 
The History of ARM
As an encore, Apple most recently announced that its new iPhone would also run a version of the operating system. The iPhone is neither PowerPC nor Intel based. Like the iPod line--and the Newton, most PDAs and handheld games, and 75% of the world’s other 32-bit embedded devices--the iPhone uses chips based on the ARM processor architecture.
 
Apple invested in ARM development back in the late 80s in a partnership with Acorn. By 1991, the ARM partnership had developed the third version of the ARM architecture, also called ARM6. This was used in the original Newton MessagePad. The eMate used a fourth version ARM, as did Nintendo’s GameBoy Advance.
 
DEC licensed the ARM architecture to create an ultra low power, fifth version of the processor series called the StrongARM. Apple incorporated this new processor into the last Newtons: the MessagePad 2000 series it released in 1997.
 
Intel acquired DEC's StrongARM business and renamed it XScale; those processors have since powered mobile devices including the RIM BlackBerry, Palm's Treo and other PDAs, Pocket PC devices such as the Dell Axim and Compaq iPaq lines, and music players including the Creative Zen.
 
Other companies also license ARM processor designs. Microsoft's Zune, Apple's full sized iPods and nanos, certain Sony Ericsson phones and Nintendo's DS all use various versions of ARM processors made by ARM licensees other than Intel's XScale family. Last summer, Intel actually sold its XScale business to Marvell, although Intel continues to manufacture them.
 
It Should Come As No Surprise
Given Apple's decades of involvement with ARM, and its existing use in the iPod, it's no surprise that Apple is advertising for iPhone engineers with ARM experience. The real surprise at Macworld Expo was that the iPhone would run a version of Mac OS X, which Apple is apparently referring to as simply OS X.
 
Of course, given NeXTSTEP's history as a highly portable operating system, and Apple's recent, rapid migration to Intel, it really shouldn't be a surprise that the company chose to port Mac OS X to ARM, either. Doing so allows Apple to develop a single code base, and rapidly port high level technologies across its product lines.
 
Despite misinformation to the contrary, Apple can port any portion of Mac OS X, including portions of the open source Darwin, to any architecture it wants, and can do so without releasing the source. That's because Darwin is offered under a BSD style license, not under the GPL.
 
OS X vs WinCE  
It seems natural to compare Apple's new, mobile version of its operating system to Microsoft's WinCE, which purports to be a scaled down version of Microsoft’s desktop version of Windows, of which Vista, XP, Windows 2000, and NT are all versions. Windows Mobile devices all run WinCE.
 
However, while WinCE has been ported to run on ARM and Intel processors, among others, is not a port of Windows NT. The WinCE platform is an entirely different kernel and architecture compared to Microsoft's desktop Windows product, despite the marketing name and many similarities.
 
Microsoft originally delivered Windows NT across several processor architectures, including Intel, MIPS, Alpha, and later PowerPC. However, it determined that support for various architectures was too difficult, and demand outside the PC was not sufficient to warrant it. Since Windows 2000, it only supports Intel processors.
 
That means Microsoft has to maintain two separate operating systems, while Apple's use of OS X across platforms is nearly identical. A follow up article will look at how OS X can fit into the iPhone, and how OS X portability relates to iPhone software. But first, is there any chance of Mac OS X for generic PCs?
 
PC OS X: Nope!
The idea of Apple releasing Mac OS X to run on industry standard PCs seems to make a lot of sense on the surface. After all, wouldn't Apple be better off selling tens of millions copies of software, rather than around 6 million Macs every year?
 
The obvious problem is that retail copies of Mac OS X would come at the expense of Mac hardware sales. Apple not only earns a higher manufacturing profit on its Macs compared to most PC makers, but it also makes a retail profit on all Macs sold through its online and retail stores.
 
In addition, Mac hardware sales are accompanied by software sales, retail accessories, and service plans such as AppleCare and .Mac, all of which generate far more profit than a software box. Why would Apple give up its entire business, which is outpacing the rest of the industry in both growth and profits, to become a software vendor dependent on the whim of other hardware makers?
 
Converting into a software company was something NeXT already tried. It didn't work back then, and the failure of Linux on the desktop today--a free product--suggests that there isn't money to be made in trying to sell a retail desktop operating system for PCs.
 
Other failures from OS/2 to BeOS could also be cited. The only reason Microsoft makes money selling Windows is because it has the market locked up; it sells OEM copies of Windows in high volume at very low cost--in the ballpark of $30 a copy.
 
If Microsoft were selling a large number of retail copies of Windows at around $300, it would not be reporting that 80% of its Windows revenues come from those ultra cheap OEM licenses.
 
Apple is simply much better off riding its increasing wave of hardware sales. If there were any need to continue arguing the point, it could be pointed out that much of the value in Apple's offerings come from hardware and software integration.
 
When running Mac OS X on a PC, there is no support for features unique to Apple hardware, such as two finger clicking and scrolling; features such as Firewire Target Mode don't work either. The retail profits on software would be quickly eaten up by increased PC support costs and efforts to support a far wider range of drivers.
 
Apple is unlikely to ever offer Mac OS X to Dell and HP for the same reason that NeXTSTEP was originally paired with custom hardware: it makes it much easier to ensure things work flawlessly. The failure of NeXT's own attempts to become a software company have been inherited by Apple as a historical warning. Apple itself also took a stab at licensing to cloners, with disastrous results.
 
Further, recent efforts by Microsoft to duplicate its Windows monopoly in the field of handheld computing, music players, tablet PCs, and related initiatives have all been a failure.
 
Palm's efforts to license the Palm OS to Sony, for use in the Clie PDAs, did not work out well either. Microsoft's fortunes from Windows were a lucky fluke resulting from the mistakes of IBM and later PC hardware makers.
 
Apple not only has no window of opportunity to successfully enter the generic PC operating system race, but has no interest in doing so. A unique OS gives Apple a product that is very difficult to copy; this applies not only to the Mac, but now also to the iPhone, an apparently the Apple TV, too.
 
The company's direction in pushing OS X into new applications raises the question: how is it that the iPhone can run OS X, which demands gigabytes of RAM on the Mac? The next article will take a look.
 
Next Articles:
 
This Series
 
What do you think? I really like to hear from readers. Leave a comment or email me with your ideas.
 
 
| | Del.icio.us | Technorati | About RDM : :

Send Link | Reddit | NewsTrust |

Download the RoughlyDrafted iMix Jan 2007 | Feb 2007

 

Apple StoreApple Store

Apple iTunes

Apple iTunes

Apple iTunes

Wednesday, January 24, 2007
| | Del.icio.us | Technorati | About RDM : :