- Back to Home »
- Role of Kernel in Operating System:
Role of Kernel in Operating System
The kernel provides the most basic interface between the computer itself and the rest of the operating system. The kernel is responsible for the management of the central processor. The kernel includes the dispatcher to allocate the central processor, to determine the cause of an interrupt and initiate its processing, and some provision for communication among the various system and user tasks currently active in the system.
Functions of Kernel in Operating System:
Kernel is the core of an operating system. The main functions of kernel are as follows:
It provides a mechanism for creation and deletion of process.
It provides CPU scheduling, memory management and device management for these processes.
It provides synchronization tools so that the processes can synchronize their actions.
It provides communication tools so that processes can communicate with each other.
Scheduling is a fundamental operating system function. Almost all computer resources are scheduled before use. CPU is one of the primary computer resources. Its scheduling is often performed in the operating system.
The kernel-based design is often used to design operating system. The kernel (also called nucleus) is a set of primitive facilities over which the rest of operating system is built.
A kernel provides an environment to build an operating system in which the designer has considerable flexibility. The policy and optimization decisions are not made at kernel level. An operating system is an orderly growth of software over kernel where all decisions regarding process scheduling, resource allocation, execution environment, file system and resource protection etc. are made.
The kernel only support the notion of processes. It does not include the concept of a resource. Operating systems have matured in functionality and complexity and more functionality has been relegated to the kernel. A kernel should contain a minimal set of functionality that is adequate to build an operating system with a given set of objectives.