Mach (kernel)

related topics
{system, computer, user}
{math, number, function}
{theory, work, human}
{work, book, publish}
{film, series, show}
{area, community, home}
{game, team, player}
{language, word, form}

Mach is an operating system kernel developed at Carnegie Mellon University to support operating system research, primarily distributed and parallel computation. It is one of the earliest examples of a microkernel. Its derivatives are the basis of the modern operating system kernels in Mac OS X and GNU Hurd.

The project at Carnegie Mellon ran from 1985 to 1994, ending with Mach 3.0. Mach was developed as a replacement for the kernel in the BSD version of UNIX, so no new operating system would have to be designed around it. Today further experimental research on Mach appears to have ended, although Mach and its derivatives are in use in a number of commercial operating systems, such as NeXTSTEP and OPENSTEP, and most notably Mac OS X using the XNU operating system kernel which incorporates Mach as a major component. The Mach virtual memory management system was also adopted by the BSD developers at CSRG, and appears in modern BSD-derived UNIX systems, such as FreeBSD. Neither Mac OS X nor FreeBSD maintain the microkernel structure pioneered in Mach, although Mac OS X continues to offer microkernel inter-process communication and control primitives for use directly by applications.

Mach is the logical successor to Carnegie Mellon's Accent kernel. The lead developer on the Mach project, Richard Rashid, has been working at Microsoft since 1991 in various top-level positions revolving around the Microsoft Research division. Another of the original Mach developers, Avie Tevanian, was formerly head of software at NeXT, then Chief Software Technology Officer at Apple Computer until March 2006.[1]



Mach concepts

Since Mach was designed as a "drop-in" replacement for the traditional UNIX kernel, this discussion focuses on what distinguishes Mach from UNIX. It became clear early that UNIX's concept of everything-as-a-file might not be practical on modern systems, although some systems such as Plan 9 from Bell Labs have tried this way. Nevertheless, those same developers lamented the loss of flexibility that the original concept offered. Another level of virtualization was sought that would make the system "work" again.[citation needed]

Full article ▸

related documents
Field-programmable gate array
MIPS architecture
X86 architecture
Portable Network Graphics
Motorola 68000
Network address translation
Sinclair ZX81
Serial port
Smart card
IEEE 1394 interface
PID controller
Tandy 1000
Hard disk drive
Wireless LAN
Commodore 64
Application-specific integrated circuit
Universal Mobile Telecommunications System
High-voltage direct current