Difference between a monolithic and micro kernel?

Difference between a monolithic and micro kernel? 




Monolithic kernel


Traditional UNIX operating system uses monolithic kernel archilecture.

The entire operating system runs as a single program in kernel mode. 

Program contains operating system core function and device drivers.
Most of the operation performed by kernel is via system call Required system calls are made within programs and a checked copy of the request is passed through a system call.
LINUX operating system and FreeBSD uses modern monolithic kernel architecture. It loads the modules at run time. 

There is easy access of kemel function as required and minimize the code running in kernel space. 

Monolithic Kernel used in Windows 95, Windows 98, Linux and FreeBSD etc.

 Advantages :


  •   Simple to design and implement.
  •  Simplicity provides speed on simple hardware.
  •   It can be expanded using module system.
  •   Time tested and design well known.

Recommend Articles For More Information :


What Is Operating System? Knowledge Of OS!!

Operating System As A User Interface And As A Resource Manager - Technopedia!

Services Of Operating System - 
Technopedia!!!

Basic Concepts Of OOPC!!

CONCEPT OF DBMS!!

Types Of Operating System - Technopedia!!!

Basic Program Of C Language For Print Hello!!

 Disadvantages :


  •   Runtime loading and unloading is not possible because of module system.
  •   If code base size increases, maintain is difficult.
  •   Fault tolerance is low.




Microkernel

Microkernel provides minimal services like defining memory address space, IPC and process management. 

It is small operating core. Hardware resource management is implemented whenever process is executing. 

Thus,The function of Microkernel is to provide a communication facility between the client programs.

It also provides facility to various services which are running in user space. Message passing method is for communication two processes.Microkernel runs in kernel mode and rest run in normal user processes. Microkernel also provides more security and reliability. 

Most of the services are running as user rather than kernel processes. 

So, by running device driver and file system as a separate user process,  a error in one can crash only single component.Mach operating system uses microkernel architecture. 

Thus, Microkernel in Windows NT operating system provides portability and modularity. 

The kernel is surrounded by a number of compact subsystems so that the task of implementing Windows NT on a variety of platform is easy.

Thus,Microkernel architecture assigns only a few essential functions to the kernel, including address space,  IPC and basic scheduling. QNX is a real time operating system that is also based upon the microkernel design.

Main disadvantage is poor performance due to increased system overhead from message passing.

May You Like To Read This Related Articles:



Introduction Of C++!!.

Operators In C++

Function Overloading In C++

Data Types in C++

Types Of Constructor In C++

Classes and Objects In C++

What Is Inheritance In C++?

Types Of Inheritance?

Basic Concepts Of OOPC!!

CONCEPT OF DBMS!!

Basic Program Of C Language For Print Hello!!

Advantages of Microkernel :


  • The Microkernel allows the addition of new services.
  • Microkernel architecture design provides a uniform interface on requests made by a process
  • Microkernel architecture supports object oriented operating system.
  • Modular design helps to enhance reliability.
  • Microkernel lends itself to distributed system support.

Comments

Popular posts from this blog

Access Control In Classes For C++

What Is Inheritance In C++? Types Of Inheritance?

Basic Concepts Of OOPC!!