Image Image Image ImageImage
Image
Welcome!
Image
Creative Services for
Image
Roughly Drafted
Image
Daniel Eran
Image
Image
Image


Image
Image Image

Unraveling The Mac OS X Linux Kernel Myth: Part 4
According to proponents of this myth, Apple will, could, or should shortly replace Mac OS X's kernel with Linux. They're wrong; here's why.

Page 1 | 2 | 3 | 4
Image


Political Differences

A Politicized Software License - The Linux kernel is only available under the GPL, a license which is tied to a political agenda to change how software is developed. The GPL insists that anyone who uses the code must also release any adaptations under the same license. It also requires that any software directly linked to any GPL software also be released under the license. In contrast, BSD licensed software can be used and adapted without meeting such demands.

Were Apple to use the Linux kernel, anything that touched the kernel, including most device drivers, would have to be open sourced under the GPL. Many hardware manufacturers are loath to release their drivers as GPL'ed open source, as this would disclose all their software technology to rivals and could erode any competitive advantages they might hold.

Apple has no desire to indoctrinate the GNU philosophy, nor could they afford to as the developer of a commercial platform. There are two other differences in how development work is run that make Linux a poor fit for Apple's need for Mac OS X:

API Stability - Linux reserves the right to make changes as its developers see fit. As a commercial developer, Apple, like Microsoft, has to balance the needs of developers on both sides of its APIs: those who work under the public API to implement it, and those who work on top to build applications for it.

Apple has to carefully control what changes are made below the API so that outside developers working on top have a consistent and stable platform to work on. This would be far more difficult if Apple were not in sole control of what was going on underneath. Apple can't adopt Linux for this reason alone.

User Complexity - Linux makes few decisions for the user and leaves them in total control of their own environment. Apple's product is highly optimized for ease of use, so it has to provide a restricted, engineered environment so that users don't need to make decisions they are either not inclined or technically unqualified to make. The degree of complexity and flexibility on each reflects those design choices; they are polar opposites.

This idea applies more to Linux as an operating system rather than a kernel, but the basic idea is still a factor: would existing Linux users be served by Mac OS X running on a Linux kernel, if they did not have the complex 'freedom to do anything' available to them? Again, Linux and those who use it have very different needs than Apple's customers.



Continued: Technical Differences




Image

More Journal Entries | More Tech Articles | Get Tech Support | My Resume | Links | Contact RoughlyDrafted

Articles Copyright © 2006 Daniel Eran. All rights reserved.
Suggestions and comments welcome. Contact RoughlyDrafted.

Read more about:
Click one of the links above to display related articles on this page.