operating-systems

Definition

Modular Kernel

A modular kernel is an operating system architecture that uses a small core kernel and dynamic loadable modules. These modules (e.g., for file systems or device drivers) can be loaded into the kernel as needed during runtime and removed when no longer required.

This architecture provides a balance between the performance of a monolithic kernel and the flexibility of a microkernel.

Characteristics

  • Dynamic Extensibility: New hardware or file systems can be supported without recompiling the entire kernel.
  • Hardware Abstraction Layer (HAL): Modular kernels often include a HAL to provide a consistent interface for modules.
  • Stability: While more robust than a pure monolithic design, a bug in a loaded module still executes in kernel mode and can potentially crash the system.
  • Efficiency: Modules communicate with the core through defined interfaces, avoiding the overhead of message passing used in microkernels.