Difference between Micro Kernel and Modular Kernel
Prerequisite – Kernel in Operating System
1. Micro Kernel :
Micro Kernel, as name suggests, is basically a software or code that usually contains minimum number of functions that are required, data, and features simply to implement OS. It is very small kernel and represents well studied OS structuring idea. In simple words, micro kernel are required to correctly implement OS.
2. Modular Kernel :
Modular Kernel, as name suggests, is a type of kernel in which some parts of system core will get allocated in independent files called modules. This can be added to system at run time. It usually requires small amount of time of load modules. If one needs a new module, then they won’t have to recompile.
Difference between Micro Kernel and Modular Kernel : Micro Kernel Modular Kernel
It generally provides mechanisms that are required to implement on OS. It generally allows administrator to add functionality only when it is required. It provides more security and reliability as compared to modular kernel. It provides less security and reliability as compared to micro kernel. It usually simplifies debugging and system verification, change service without restarting system, etc. It usually decreases boot time, does not have to load everything at boot time, faster development time, etc. It simply places code in user space and requires that channels be used to connect code modules. It simply places place any code in any ring that it chooses. In this, minimal or less functionalities or facilities are required to load further services. In this, different kernel services are separated into different files so that one can link monolithic kernel with functionality or facilities that are required. Its main aim is to minimize or reduce kernel and implement as much as possible outside TCB. Its main aim is to keep what is loaded in boot-time minimal while still enabling kernel to execute more functions that are complex. It generally includes low-level address space management, IPC (Inter-Process Communication). It generally includes simply filesystem driver, built-in native file system driver with other storage modules, etc.