While we hear so much about Linux and the Linux Kernel, what exactly is the Kernel and what does it do?
In summary the Linux Kernel is the interface between the operating system and your computer hardware. It is the core of any computer allowing the operating system to control a number of different functions and is the most vital part of any operating system – without which your computer would not operate.
So what are the basic functions of the Linux Kernel?
The most basic responsibilities of the Kernel include :-
Central Processing Unit (CPU)
The Kernel will control which operations and tasks have access to the processing power of the CPU at any one time. The vast majority of CPUs can only handle one instruction at a time and therefore the Kernel will allocate a time slot for each function, which is why you will see your system slowing down the more functions you have running at the same time.
The vast majority of computer functions will require access to different areas of the internal memory at some time. Again it is the responsibility of the Kernel to decide when each process can access the memory and specify which area should be used. In the event of a lack of available memory it is also the responsibility of the Kernel to make other arrangements.
Input / Output
This is where the skill of an operating system is perhaps at its best, controlling the vast array of input and output devices available today. We are talking about monitors, keyboards, the mouse and any other devices which can communicate with your computer system.
The Linux Kernel is the key to the success of the operating system and while we have not mentioned it above, security is also a vital component of the whole package. Access to and from the Kernel needs to be water tight and this was the area where Microsoft were deemed rather unhelpful when the array of software security firms requested access to the inner workings in order to improve security for users.