4.3 Microkernels
As the operating system kernel became large, the microkernel approach was proposed to modularize the kernel. In this approach, the nonessential components are removed from the kernel and are implemented as system and user-level programs. The microkernel provides the communication between the client program and the various services that are running in user space. The advantages of the microkernel approach are:
- The operating system can be extended easily because the new services are added to user space and no modifications are needed in the kernel.
- The microkernel is secure and reliable because services are running as user processes. If a service fails, the operating system remains untouched.
However, microkernel operating system can suffer from performance decreases because of increased system function overhead.
4.4 Modules
In modular kernel operating system, the object-oriented programming techniques are used to create a modular kernel. The kernel has a set of core components and modules that can be loaded dynamically. Figure 3.10 shows the structure of the Solaris operating system which consists of a core kernel with seven loadable kernel modules: scheduling classes, file systems, loadable system calls, executable formats, STREAMS modules, device and...