Last Updated on by ICT Byte
What do you want to Know? Let’s Go !
Introduction of Kernel
- Kernel is core of OS representing core aspect of Linux distribution for computers and servers
- Architecture of Kernel is monolithic and OS operates in Kernel space.
- Complete control over anything is there with Kernel
- Linux Kernel is a layer between hardware of device and software.
- Kernel is responsible for
- For application execution, process is managed by Kernel
- Memory Management
- I/O Management
- System call control
- With help of device drivers, Kernel has role in device management.
Operations of Kernel
- As Kernel controls all the programs in system, sometimes Kernel is considered is heart of the operating system.
- When the device starts, initialization process starts where functions such as checking of memory is performed.
- Memory allocation is performed and environment is created where application runs with no disturbances.
- As Kernel works as service provider, for accomplishing multiple tasks like requesting the usage of disk, network card etc, program can request Kernel.
- For CPU to enable multitasking, Kernel can set interrupts.
- By not letting faulty programs to enter operational functions of others, computational environment is protected by Kernel.
- Unauthorized programs are stopped by Kernel at entrance itself by not allowing memory space.
- Kernel can also limits the CPU time consumed by unauthorized programmes.
Types of Kernel
Monolithic Kernel
- Contains many drivers.
- Creates communication interface between h/w and s/w if device
- Consist various modules which can be dynamically loaded and unloaded.
- This architecture expands the capacities of OS and allows easy extension to Kernel
- Maintenance of Kernel is easy as it allows concern module to load and unload when there is need of bug fixation
Microkernel
- Executes basic functionality without interruptions
- Addresses the issue of ever growing size of Kernel code (monolithic failed in this)
- To run in user space, some basic services are allowed. Services are protocol stack, device driver management, file system etc.
- Capability of OS can be enhanced with minimum code, improved security and ensuring stability.
- All the basic OS services are available to program via IPC – Interprocess Communication
- Allows direct interaction between device drivers and hardware
Hybrid Kernel
- Combines monolithic and microkernel
- Can decide what it wants to run in user and supervisor mode.
- Device drivers, filesystens I/O etc run in user mode
- In supervisor mode, server calls and IPC are placed.
Kernel Space Vs User Space
Kernel Space
- Found in elevated state. Kernel space provides full access of hardware devices
- It protects memory space
- Memory space and user space is togetherly called Kernel space.
- In environment of Kernel space, core access to system service and hardware are maintained.
- This is provided as sercice to rest of the system.
User Space
- It’s a code that run outside OS Kernel Environment
Userspace is various applications/programs/libraries which are used by OS to connect with Kernel.
