Skip to content
Related Articles

Related Articles

Improve Article
Save Article
Like Article

Difference between Microkernel and Monolithic Kernel

  • Last Updated : 22 Jun, 2021

What is a kernel ?
The kernel is a computer program at the core of a computer’s operating system and has complete control over everything in the system. It manages the operations of the computer and the hardware.
There are five types of kernels :

  1. A micro kernel, which only contains basic functionality;
  2. A monolithic kernel, which contains many device drivers.
  3. Hybrid Kernel
  4. Exokernel
  5. Nanokernel

But in this tutorial we will only look into Microkernel and Monolithic Kernel.

Attention reader! Don’t stop learning now. Get hold of all the important CS Theory concepts for SDE interviews with the CS Theory Course at a student-friendly price and become industry ready.

 

1. Microkernel :
kernel manages the operations of the computer, In microkernel the user services and kernel services are implemented in different address space. The user services are kept in user address space, and kernel services are kept under kernel address space.



2. Monolithic kernel :
In Monolithic kernel, the entire operating system runs as a single program in kernel mode. The user services and kernel services are implemented in same address space.
 

Differences between Microkernel and Monolithic Kernel :

Microkernel

Monolithic kernel

In microkernel user services and kernel, services are kept in separate address space.

In monolithic kernel, both user services and kernel services are kept in the same address space.

OS is complex to design.

OS is easy to design and implement.



Microkernel are smaller in size.

Monolithic kernel is larger than microkernel.

Easier to add new functionalities.

Difficult to add new functionalities.

To design a microkernel, more code is required.

Less code when compared to microkernel

Failure of one component does not effect the working of micro kernel.

Failure of one component in monolithic kernel leads to failure of entire system.

Execution speed is low.

Execution speed is high.

It is easy to extend Microkernel.

It is not easy to extend monolithic kernel.

Example : Mac OS X.

Example : Microsoft Windows 95.

 

My Personal Notes arrow_drop_up
Recommended Articles
Page :

Start Your Coding Journey Now!