In: Computer Science
Explain how the modular kernel design combines the benefits of both the layered and microkernel structures.
Layered structure :
In layered structure, operating system is divided into many different level. The bottom most layer contains all hardware like memory, processor, etc and top most layer contains all user interface part from where user interacts with the system. Each layer are responsible for specific tasks. It's construction is very easy for understanding purposes and for debugging. In the below diagram I tried to give insight of structure.
Micro-Kernel:
A microkernel is the base programming that is needed to accurately execute a working operating system. This incorporates memory, scheduling of process and fundamental inter process communication. In the kernel mode Microkernel is the only software that runs. Other software runs in user mode. In the below diagram I tried to show to micro kernel based structure.
Modular kernel structure:
It is the hybrid of layered structure and micro kernel structure. It tried to combine good feature from both the kernel and becomes a stable as well as good performance kernel. It contains many module that are responsible for a specific task as layers does in layered structure. At the same time it only loads module or driver if it is requested or required. And if many process are requesting the same module, it creates the duplicate copies of them to reduce the cost of multiple loading and unloading of module. It is expert in diagnosis of system problems. It uses small-small kernel to increase performance and reduce memory's foot print which is also the feature of microkernel structure. In the below idiagram I tried to show you the modular kernel structure.
Modular kernel structure.