Lecture-1.1: Kernel and Types of Kernel in Operating System (OS)

 Kernel and Types of Kernel in Operating System

Kernel: A kernel is an important part of an operating system that manages system resources. It also acts as a bridge between software and hardware of the computer. It handles tasks like running programs, accessing files, and connecting to devices like printers and keyboards.


                                                                    Figure: Kernel in OS

          

      Application:

1)      Facilitates communication between hardware and user applications.

2)      Ensures efficient and secure multitasking.

3)      Manages system stability and prevents unauthorized resource access.

Types of Kernels:

Monolithic Kernel :

In a monolithic kernel, all the operating system services run in kernel space, which provides efficient communication between components. However, it also means that a failure in one component can crash the entire system.

Example: Unix, Linux, Open VMS, XTS-400 etc.

Advantages

1)      Faster process execution with no separate user space and kernel space

2)      Smaller source and compiled forms

Disadvantages

1)      A failure in one component can crash the entire system

2)      Not portable, must be rewritten for new architectures

3)      Large size and difficult to manage

 

Microkernel :

A microkernel only includes the essential services in kernel space, and other services run in user space. This approach reduces the kernel's size and improves the system's reliability. However, it also results in slower communication between components due to the need for inter-process communication.

 

Example: Mach, L4, AmigaOS, Minix, K42 etc.

Advantages

1)      New services can be added without modifying the whole OS

2)      Kernel process crashes do not necessarily cause the whole system to crash

Disadvantages

1)      More software is required for interfacing, which can reduce system performance

2)      Complicated process management

3)      Difficult to fix messaging bugs


Hybrid Kernel :

A hybrid kernel is a combination of monolithic and microkernel architectures. It includes a small kernel in kernel space, with other services running in user space. This approach provides both efficiency and reliability.

 

Example: Windows NT (XP, Vista, 7, 8,10), macOS, iOS, Android etc.

Advantages

1)      No need to reboot the system for testing.

2)      Faster integration of third-party technologies.

Disadvantages

1)      Increased chances of bugs due to multiple interfaces.

2)      Maintenance of modules can be difficult for some administrators, especially when dealing with symbol differences.

Post a Comment

0 Comments