Mach is a microkernel system, which means that most of the features that are ordinarily within the kernel are instead separate servers - think of them as daemons, though they aren't necessarily running in user space.
At one time, this concept was all the rage. Microkernels, and Mach specifically, were going to take over the world. That has yet to happen. GNU Hurd is a microkernel OS. Through a complicated lineage, Mac OSX is also a Mach off-shoot. Hurd, by the way, owes part of its naming to the phrase "Unix Replacing Daemons", which is what Mach was doing.
The original Mach was developed on a BSD 4.2 box, and they went along replacing parts of the BSD kernel with Mach "servers". This apparently didn't get them too far, so at some point they took the entire BSD kernel and turned it into a Mach server process, running in user space. The performance of this system (called "POE") was less than stellar, as might be imagined.
There are Linux Mach implementations too.
Windows NT has microkernel aspects and I vaguely remember Bill Gates saying something like "it effectively is Unix" way back when. I think he was being asked how NT compared with Mach, or perhaps how much of Mach actually went into NT. He may have also been thinking of the Posix subsystem, which was something Windows trumpeted quite a bit back then. Whatever he as thinking or not thinking, I don't believe he has associated NT and Unix ever again, for obvious reasons. All of that makes Microsoft's disparagement of OS X ("It's a warmed-over Mach") ironically amusing. Is it more amusing that Richard F. Rashid, the "father" of Mach, now runs Microsoft research?
If you found something useful today, please consider a small donation.
Got something to add? Send me email.
More Articles by Tony Lawrence © 2011-07-05 Tony Lawrence