| MkLinux | |
|---|---|
| Developer | OSF Research Institute,Apple Computer, MkLinux Developers Association,volunteer community |
| Written in | C |
| OS family | Macintosh,Linux (Unix-like) |
| Working state | Discontinued, legacy |
| Source model | Open source |
| Initial release | February 1996; 30 years ago (1996-02) |
| Final release | Pre-R2 / August 5, 2002; 23 years ago (2002-08-05) |
| Marketing target | Researchers,hobbyists |
| Available in | English |
| Package manager | RPM |
| Supported platforms | PowerPC |
| Kernel type | Microkernel (Mach 3.0) |
| Userland | Red Hat Linux |
| Default user interface | Console,X11 |
| License | GNU General Public License |
| Preceded by | Mach,Linux |
| Succeeded by | macOS,Darwin, Linux |
| Official website | mklinux |
MkLinux (Microkernel Linux) is a discontinuedopen-source experimental operating system forPowerPC Macintosh computers. It was launched in 1995 as a collaboration between theOpen Software Foundation (OSF) andApple Computer, as a critical pivot in Apple's technical and social history. MkLinux became Apple's first official free and open-source software community project, and the debut of Linux on the firstPower Macintosh.
MkLinux's key feature is itsmicrokernel architecture. Most Linux distributions have a monolithic kernel, but MkLinux is distinguished by its architecture which adapted theLinux kernel to run as a user-space server hosted on top of theMach microkernel version 3.0. This "single server" architecture makes the system stable and easier to debug, but the overhead of communicating with the microkernel reduced performance.[1]
Reception was mixed, focusing on the difficult installation process and the significant performance costs of the Mach kernel. Reviewers noted its potential as a "Unix killer", but that it required users to abandon the user-friendly Macintosh experience for a pure Linux environment. The microkernel's additional technical complexity made tasks like kernel recompilation more difficult compared to standard Linux distributions.
MkLinux was succeeded in the Linux community by the monolithic LinuxPPC. Through the MkLinux alliance, OSF and Apple eventually created the technical substrate necessary to also port the Mach-basedXNU kernel to Macintosh. Apple finally resolved its decade-long operating system debacle by adopting the XNU-basedNeXTSTEP (codenamedRhapsody) as the future ofmacOS.
MkLinux adapts the Linux operating system to run as a server hosted atop theMach microkernel version 3.0.[2] In this "single server" model, the Mach microkernel handles the low-level hardware abstraction, memory management, andinter-process communication (IPC). The Linux kernel functionality—including file systems, networking, and process management—operates as a separate server task.[2][1]
This design contrasts with thehybrid XNU kernel in the latermacOS, where the BSD and Mach components run together in the same kernel address space.[3] The MkLinux architecture allows the operating system to be debugged as a standard user process and improves stability.[4] However, this separation introduces a performance penalty; thecontext switching required between the Mach microkernel and the Linux server to handle system calls creates overhead.[1]
The MkLinux project began in August 1995 as a sponsorship betweenApple Computer and theOpen Software Foundation (OSF) Research Institute.[5] The goal was to port "Linux on Mach" to thePower Macintosh, allowing Apple to explore kernel technology alternatives.[2] Apple's operating system strategy of the preceding decade was an ongoing infamous failure (mainlyA/UX,Pink, andCopland), and its current flagship was the legacyMac OS 9.[citation needed] There was not yet an official port of Linux for anyPowerPC (launched the previous year) nor for any Macintosh.[6] The OSF Institute, owner of theMach microkernel, was interested in promoting Mach on various platforms.[6] Apple VP of Development ToolsIke Nassi and Brett Halle directed the effort, and development later was split between Michael Burg at Apple inCupertino, California, and Nick Stephen at the OSF inGrenoble, France.[7]
MkLinux was officially announced at the 1996World Wide Developers Conference (WWDC), where attendees received a free CD containing a binary distribution.[6] In mid-1998, the community-led MkLinux Developers Association took over development.[6] Due to the large size of the software distribution, which was difficult to download via contemporarydial-up Internet access, official CDs were distributed in books published by Prime Time Freeware in English and Japanese.[6][8]
Following the release ofOpen Firmware-basedPower Macintosh computers, the LinuxPPC project created an official PowerPC branch of the Linux kernel.[9] MkLinux and LinuxPPC developers exchanged ideas, as the two projects diverged in hardware support and performance.[9] MkLinux provides greater hardware compatibility, supporting both olderNuBus and newerPCI Macintosh systems, whereas LinuxPPC initially supported only PCI-based machines.[6] However, MkLinux suffers a performance cost relative to LinuxPPC due to the overhead of the Mach kernel.[10]
After Apple ceased direct support for MkLinux, the developer community struggled to maintain the Mach kernel and support various Power Macintosh models.[9] MkLinux remained the only Linux option for Macintosh NuBus computers until the release of PPC/Linux for NuBus in June 2000.[9]
The critical reception of MkLinux focused on its stability and the steep learning curve required for Macintosh users.MacTech magazine noted in 1999 that MkLinux failed to displace commercial Unix, but it pushed the classic Mac OS toward more robust memory management.[10] The installation process was characterized as inconsistent, described as "either smooth as silk or very, very rough" depending on the user's specific hardware configuration.[10]
Reviewers also highlighted the difficulty of maintaining the operating system compared to standard Linux distributions. Specifically, recompiling the kernel was noted to be "slightly more difficult" due to the additional steps required to synchronize with the Mach microkernel. The OS has a functional desktop suite, but critics observed that adopting MkLinux required users to forgo the traditional novice-focused Macintosh experience in favor of a standard, command-line centric, Unix environment.[10]
MkLinux represented Apple's first official attempt to support afree and open-source software project.[5] The work done with theMach 3.0 kernel in MkLinux assisted the initial porting of NeXTSTEP to the Macintosh hardware platform, which evolved into macOS.[3]
OS X is based on the Mach 3.0 microkernel, designed byCarnegie Mellon University, and later adapted to the Power Macintosh by Apple and the Open Software Foundation Research Institute (now part of Silicomp). This was known as
osfmk, and was part of MkLinux (http://www.mklinux.org). Later, this and code from OSF's commercial development efforts were incorporated into Darwin’s kernel.
— Apple, Inc., Kernel Programming Guide: Mach API Reference[3]
| Version | Approx. date | Notes |
|---|---|---|
| DR1 | May 1996 | Linux 1.3 |
| DR2 | September 1996 | Many bug fixes |
| DR2.1 | May 1997 | Linux 2.0; support for PCI machines |
| DR3 | July 1998 | |
| R1 | December 1999 | |
| Pre-R2 | August 2002 |