This post has already been read 946 times!
1. Tasks of the Kernel
On a purely technical level, the kernel is an intermediary layer between the hardware and the software. The kernel can be regarded as an enhanced machine that, in the view of the application, abstracts the computer on a high level.
Viewing the kernel as a resource manager is justified when several programs are run concurrently on a system. In this case, the kernel is an instance that shares available resources — CPU time, disk space, network connections, and so on — between the various system processes while at the same time ensuring system integrity.
Another view of the kernel is as a library providing a range of system-oriented commands. As is generally known, system calls are used to send requests to the computer; with the help of the C standard library, these appear to the application programs as normal functions that are invoked in the same way as any other function.