microkernel - TarisMajor/5143-OpSystems GitHub Wiki
Microkernel
A microkernel is a minimalistic operating system kernel that provides only the essential services, such as memory management, inter-process communication, and basic scheduling. Non-essential services like device drivers, file systems, and network protocols run as user-level processes, outside of the kernel. This modular approach enhances system stability and security because faults in user-level components do not directly affect the kernel.
The trade-off with microkernels is that they can introduce higher overhead due to the communication required between the microkernel and user-space services. Notable examples of microkernels include the Mach kernel (used in macOS) and the Minix kernel.
Sources:
Tanenbaum, A. S. (2001). Modern Operating Systems. Arpaci-Dusseau, R. H., & Arpaci-Dusseau, A. C. (2018). Operating Systems: Three Easy Pieces.