What is Kernel in OS?
What is Kernel in linux or other operating system: Any computing device whether its computer or mobile, works with the combination of two components Software and Hardware. Here Hardware comprises of components of device and software can be any operating system like iOS, Android, Linux or Microsoft Windows. Any operating system software that needs to interact with the device from a hardware needs a program called Kernel. For any OS, the kernel is its core component, which is also called the Foundation Layer of OS. It works like a bridge between the kernel hardware and applications by using the different inter-process communication and system calls of the OS such as communicating with the RAM and CPU as per the need of the application and managing their resources. Click here to read kernel in Hindi
Kernel Definition: The kernel system software is a core component of the OS that has complete control over the system. Because the kernel is a central module of the OS, so in most systems after the boot-loader, this is the first program to be loaded on startup. After its load, the entire system control goes to the kernel, and while managing the rest of the startup activities, in addition to the input/software requirement of software, translating them into data processing instructions for the CPU is done, it also manages the memory and other input-output devices such as keyboards, monitors, printers and speakers. One thing to keep in mind is that after the system starts, it loads into memory and remains in memory. Now that it remains in memory, so it is very important to have its size at the least so that the memory can perform the rest and the device is not slow. Whenever the kernel loads into memory, it remains in a safe area of memory so that the other OS on does not overwrite it.
What the kernel does after the device is booted: As soon as the system starts, the boot-loader loads into the kernel memory after loading. After this, it checks the system’s necessary components such as memory, processor, GPU etc. It also checks the second input-output device connected to the system. Along with this, the OS loads but the kernel remains in memory. Even after loading the entire OS, the kernel runs in the background and manages the system’s resources.
Some important tasks of the kernel –
- File system
- Process management
- Resources management
- Memory management
- Disk management
- Device management
- I/O Communication
Types of Kernels – By the way, many different kernels exist but two are the most popular Kernel –
Monolithic kernel – It provides all the necessary services that require the operating system. In this, User Services and Kernel Services are kept in the same address space. Examples of monolithic-kernel based OS – Linux, Unix, Windows 95, 98, ME, Solaris, DOS etc.
Microkernel – This kernel only handles basic functions. If it compares to monolithic, its size is small and execution is slow. In this, User Services and Kernel Services are kept in separate address space. Examples of Micro-kernel based OSs -QNX, Symbian, Mac OS X, Windows NT etc.