What is microKernel in Operating Systems?

Kernel is the main part of an Operating System. It is the first program that is loaded after the boot loader whenever we start a system. The Kernel is present in the memory until the Operating System is shut-down.

Kernel provides an interface between the user and the hardware components of the system. Whenever a process makes a request to the Kernel, then it is called System Call.

Functions of Kernel

The functions of the kernel are as follows −

  • Process management

  • Access computer resources

  • Device management

  • Memory management

  • Interrupt handling

  • I/O communication

Types of Kernels

The different types of kernels are as follows −

  • Monolithic kernel.

  • Micro kernel.

  • Hybrid kernel.

  • Nano kernel.

  • Exo kernel

Now let us discuss the Micro kernel.

Micro Kernel

Micro kernel is the type of the operating system architecture which is useful in the same way as the other architectures are and is used for file management, memory management and the scheduling of the processes.

But the difference in this type of architecture is that it has some particular space or address allotted for the different purposes like file sharing, scheduling, kernel services etc.

These all services have their particular address allotted for them which results in the reduction of the size of kernel and the operating system.

The basic idea of microkernel design is to achieve high reliability by splitting the operating system up into small, well-defined modules. The microkernel OS runs in kernel mode.

The main function of microkernel is to provide a communication facility between the client program and various services that are running in user space

All new services are added to the user space and the kernels don’t need to be modified. Microkernel provides high security and reliability because most of the services are running in user space, if a service fails the rest of the operating system remains untouched


The advantages of microkernel are as follows −

  • This is small and isolated so as better functioning

  • These are more secure due to space division

  • Can add new features without recompiling

  • This architecture is more flexible and can coexist in the system

  • Fewer system crashes as compared to monolithic system


The disadvantages of microkernel are as follows −

  • It is expensive as compared to the monolithic system architecture.

  • Function calls needed when drivers are implemented as processes.

  • Performance of the microkernel system can be indifferent and may sometimes cause problems.

Architecture of Micro kernel is given below −