operating-systems

Definition

Microkernel

A microkernel is an OS architecture keeping the kernel minimal by moving non-essential services (file systems, device drivers) into user space. The kernel provides only fundamental services for system management and inter-service communication.

Core Services

Kernel Responsibilities

The microkernel handles only:

  • Process Switching: CPU management and basic scheduling
  • Basic Memory Management: Address space protection
  • Low-level I/O and Interrupts: Basic hardware access
  • Inter-Process Communication: Message passing between user-level services

Properties

Portability

Most OS code is hardware-independent user code, simplifying architecture migration.

Flexibility

New services can be added or modified without changing the core kernel.

Reliability

A crash in a server process does not necessarily crash the entire system.

Distributed Support

Naturally supports distributed computing via messages between services on different nodes.

See Process-Based Kernel for a specific implementation model.