Tag: microkernel

In computer science, a microkernel (also known as μ-kernel) is the near-minimum amount of software that can provide the mechanisms needed to implement an operating system (OS). These mechanisms include low-level address space management, thread management, and inter-process communication (IPC). If the hardware provides multiple rings or CPU modes, the microkernel is the only software executing at the most privileged level (generally referred to as supervisor or kernel mode). Traditional operating system functions, such as device drivers, protocol stacks and file systems, are removed from the microkernel to run in user space. In source code size, microkernels tend to be under 10,000 lines of code, as a general rule. MINIX’s kernel, for example has less than 6,000 lines of code.
Microkernels developed in the 1980s as a response to changes in the computer world, and several challenges adapting existing “mono-kernels” to these new systems. New device drivers, protocol stacks, file systems…