When discussing Apple and its widely acclaimed macOS, it’s important to delve into its history and the foundational technologies that underpin it. While “stole” might be a strong term, Apple certainly made strategic and intelligent use of open-source technologies in building macOS. This article explores how Apple harnessed these technologies, the benefits it gained, and the controversies that arose.
The Birth of macOS
The NeXTSTEP Foundation
The story of macOS begins not with Apple, but with NeXT, a company founded by Steve Jobs in 1985 after he left Apple. NeXT developed NeXTSTEP, an operating system based on the Mach kernel and the Unix operating system. NeXTSTEP’s advanced capabilities, including its object-oriented development environment, caught Apple’s eye. In 1996, Apple acquired NeXT, and its technology became the foundation of what would become macOS.
The Role of BSD Unix
A critical component of macOS is its Unix-based core, derived from the Berkeley Software Distribution (BSD) version of Unix. BSD is a powerful, open-source operating system known for its stability and security. By adopting BSD, Apple leveraged a mature, well-tested system, providing macOS with a solid foundation and immediate credibility in terms of reliability and performance.
Key Open Source Components in macOS
The XNU Kernel
macOS’s kernel, known as XNU (X is Not Unix), is a hybrid kernel combining elements of the Mach kernel and components from BSD. XNU represents a significant evolution of these open-source projects, blending their strengths into a cohesive unit that powers macOS.
The Darwin Operating System
Darwin is the open-source Unix-like operating system upon which macOS is built. It includes the XNU kernel, various BSD components, and other elements. By open-sourcing Darwin, Apple encouraged community contributions and transparency, allowing developers to understand and even improve the underlying system.
The Use of Other Open Source Technologies
In addition to the kernel and core operating system, macOS incorporates numerous other open-source technologies. For instance:
- CUPS (Common Unix Printing System): CUPS is an open-source printing system used by macOS to manage print jobs and queues.
- WebKit: Originally derived from the KHTML engine used in the Konqueror web browser, WebKit is the rendering engine behind Safari, Apple’s web browser.
- OpenSSH and OpenSSL: These open-source projects are critical for macOS’s secure communication and encryption capabilities.
The Benefits Apple Gained
By leveraging open-source technologies, Apple reaped several key benefits:
- Accelerated Development: Building on existing, well-established technologies allowed Apple to expedite the development of macOS, ensuring a robust and feature-rich operating system.
- Community Support: The open-source community often contributes to the improvement and security of the software, allowing Apple to benefit from a collective pool of knowledge and expertise.
- Cost Efficiency: Utilizing open-source software can reduce development costs and resource requirements, enabling Apple to allocate resources more effectively.
Controversies and Criticisms
While Apple’s use of open-source technology has been largely beneficial, it has not been without controversy:
GPL and Apple’s Licensing Practices
One of the most contentious issues revolves around the GNU General Public License (GPL), which governs many open-source projects. The GPL requires that any derivative works also be open-sourced under the same license. Apple has faced criticism for incorporating GPL-licensed software into its proprietary products without always complying with these licensing requirements. For example, the Samba file-sharing software was removed from macOS when its license was updated to GPLv3, which has stricter conditions Apple was unwilling to meet.
Transparency and Contribution Back to the Community
Critics argue that while Apple benefits significantly from open-source projects, it does not always contribute back to the community in the same measure. Although Apple has open-sourced certain components like Darwin and WebKit, many of its enhancements and proprietary layers remain closed, limiting the benefits that flow back to the broader open-source ecosystem.
Conclusion
Apple’s strategic use of open-source technology in building macOS is a testament to the power and potential of open-source software. By integrating and enhancing these technologies, Apple has created a robust, innovative operating system that powers millions of devices worldwide. However, this relationship is complex, marked by both collaboration and contention. Understanding this dynamic is crucial for appreciating the evolution of macOS and the broader implications for the tech industry.