What is Kernel (computer science)?
[[File:Kernel Layout.svg|thumb|225px|Shows the job of a kernel in a computer]] A '''kernel''' is the central part of an operating system. It manages the operations of the computer and the [[Computer hardware|hardware]], most notably memory and [[CPU]] time.<ref>{{cite web |url=http://www.linfo.org/kernel.html | title=Kernel | website=Linfo | publisher=Bellevue Linux Users Group}}</ref> Kernels also provide services which programs can use through system calls. There are five types of kernels: * A micro kernel - A kernel which only contains the basic functionality; * A monolithic kernel - A kernel which contains many [[device driver]]s. The Linux kernel is an example of a monolithic kernel. *Hybrid Kernel - The [[Microsoft Windows]] NT kernel is an example of a hybrid kernel. *Exokernel *Nanokernel A typical computer user never interacts directly with the kernel. It runs behind the scenes and cannot be seen, except for the text logs that it prints. == Operations of kernel == The kernel is the most fundamental part of an operating system. It can be thought of as the program which controls all other programs on the computer. When the computer starts, it goes through some initialization ([[booting]]) functions, such as checking memory. It is responsible for assigning and unassigning memory space which allows [[software]] to run. The kernel provides services so programs can request the use of the [[network card]], the disk or other pieces of hardware. The kernel forwards the request to special programs called [[device driver]]s which control the hardware. It also manages the [[file system]] and sets interrupts for the [[CPU]] to enable [[multitasking]]. Many kernels are also responsible for ensuring that faulty programs do not interfere with the operation of others by denying access to memory that has not been allocated to them and restricting the amount of CPU time they can consume. It is the heart of the operating system. == Micro kernels and monolithic kernels == [[Operating system]]s commonly use monolithi