ARCHIVED: What are kernels and microkernels?
A core feature of any operating system, the kernel manages communication between hardware and software. The kernel is responsible for managing memory, and I/O to memory, cache, the hard drive, and other devices. It also handles device signals, task scheduling, and other essential duties. The kernel is one of the first components loaded into memory during the boot process, and remains active as long as the computer is operational. Kernels vary widely in function and scope, but always greatly affect their operating system's capabilities. For this reason, particularly in Unix, administrators tweak the kernels to best suit their requirements.
Compared to a typical kernel, a microkernel is compact, performing only the basic functions universal to all computers. Designed to be integrated into different operating systems, a microkernel works with OS-specific servers that provide higher level functions. This component-based structure improves a system's portability, but potentially at the expense of performance. Mach and its derivatives, the most prominent examples of the microkernel architecture, are the foundations of systems such as Tru64 Unix, the GNU Hurd, and Mac OS X.
Last modified on November 15, 2013.