ARCHIVED: What are kernels and microkernels?

This content has been archived, and is no longer maintained by Indiana University. Information here may no longer be accurate, and links may no longer be available or reliable.

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.

This is document agsv in the Knowledge Base.
Last modified on 2018-01-18 12:10:24.