A microkernel is a kernel that provides a very limited number of services. A microkernel relies on user space daemons to provide services like filesystems.

Linux uses a monolithic kernel however other operating systems like HURD use a microkernel.

An example of a microkernel is Mach.

The concept of a microkernel dates to the early 1980's, it was observed that the Unix kernels had grown in size and complexity to the point where the ease of porting to new architectures was becoming more difficult.

Perhaps a couple dozen or more base microkernels are listed at http://www.cs.arizona.edu/people/bridges/os/microkernel.html. The best known of these include BeOS, Chorus, Mach, and NextSTEP, QNX and Hurd (Mach based). Windows NT reportedly uses a microkernel.

In practice microkernels have been used to deliver a variety of specialized benefits, including real time operation, and to deliver different operating systems on a common hardware platform. The best known example of this is IBM's use of a Mach-derived microkernel to deliver both AIX and as the migration platform for os/400 when they discontinued the proprietary as/400 architecture with power/powerpc.

Briefly:
BSD begat QNX and (arguably) Mach
Mach (bsd-flavored) begat: NextStep, AIX, osf/1, Hurd, MachTen and Mac OS X
NextStep begat OpenSTEP which begat Rhapsody which begat Mac OS X (server)
os/2 (v2.x) and VMS begat NT which begat Windows 2000
os/2 (v2.x) and Mach begat os/2 warp
osf/1 begat (DEC) osf/1 which begat Digital Unix which begat Tru64
AIX (as a microkernel) and os/400 begat os/400

This is a highly simplified view, and is kernel centric, and both differs from Unix Family Tree and misses the inheritance of features. Most authors statement of the taxonomy of unix is variant, release or feature centered. That is part of the point of a microkernel, OS flavor in a microkernel design is not coupled to the kernel design.


References:
http://www.cs.arizona.edu/people/bridges/os/microkernel.html http://www-2.cs.cmu.edu/afs/cs.cmu.edu/project/mach/public/www/FAQ.html http://www.levenez.com/unix/

Note: Corrections, enhancements welcome. Operating Systems are very complex in how they inherit code and features. (for instance I have no idea whether plan 9 is implemented using a microkenel.)

Log in or register to write something here or to contact authors.