what is a Linux Kernel?
We all know that a computer is a machine capable of performing arithmetic and logical operations. The Operating System manages the hardware and software resources of a computer and provide the services for other programs to run. The operating system has to work closely with the system
hardware to get the correct response. In a computer system it is the CPU or the processor which does all the arithmetic and logical operations along with managing the data flow. But CPU or processors are devices that understands only binary data, i.e. data comprised of only ones (1) and zeroes (0). Where as the user applications are mostly programs written in high level languages like C, C++. So how does the hardware understand the instruction given by a user application written in high level language. Or who translates the high level language to machine level language. The answer is, Kernel.
Kernel is the most integral part of an Operating System that manages the input and output requests from the user applications (software) and convert them to machine level instruction for the CPU and the other hardware components. Every operating system has its own kernel. Below image shows how kernel connects the user applications with the hardware components.
hardware to get the correct response. In a computer system it is the CPU or the processor which does all the arithmetic and logical operations along with managing the data flow. But CPU or processors are devices that understands only binary data, i.e. data comprised of only ones (1) and zeroes (0). Where as the user applications are mostly programs written in high level languages like C, C++. So how does the hardware understand the instruction given by a user application written in high level language. Or who translates the high level language to machine level language. The answer is, Kernel.
Kernel is the most integral part of an Operating System that manages the input and output requests from the user applications (software) and convert them to machine level instruction for the CPU and the other hardware components. Every operating system has its own kernel. Below image shows how kernel connects the user applications with the hardware components.
Pic Courtesy: By Bobbo (Own work) [CC-BY-SA-3.0 or GFDL ], via Wikimedia Commons |
Major functions of a Linux Kernel are
- Memory Management - Allocation and reclamation of memory to different processes
- Inter Process Communication (IPC)- Method by which processes communicates with each other
- Device Management - Allows a process to communicate with a hardware device with the help of device drivers or modules
Comments
Post a Comment