T - D - P - S - R - M - I - C - B - A - E - F - G - H - J - K - L - N - O - Q - U - V - W - X - Y - Z - Main Page
 
Welcome to BlueGoose Systems' Glossary. Please use the search module below or browse through the alphabetical listings of computer and networking terminology. Please note this is a work in progress and is by no means exhaustive.
 
 
Currently viewing the definition of: Kernel
 
 
 The inner, central part common to most operating systems, responsible for managing the machine's resources. Sometimes previously referred to as the "core" or "nucleus" and distinct from other, higher layers of the operating system's structure. Used in particular when referring to Unix/Linux-based systems. It performs the most basic, low-level functions including control of the computer's hardware - input/output devices including mouse, keyboard, displays etc (either directly or via software) - memory allocation and process control. Execution of the kernel is usually initiated by the boot process, after which it initialises and starts the first process. The kernel is critical and in constant use so is typically loaded into memory at all times. Applications or other parts of the operating system access the kernel and it's resources via System Calls and Inter-Process Communication (IPC). The efficiency and speed of the kernel determines how efficient and quickly the rest of the operating system will run and so kernel design is a critical process. Kernels may be broadly divided into two parts - Monolithic kernels and Microkernels. In the monolithic kernel all of the operating system's "Services" run in the same area of memory as the kernel. This has many advantages but can also mean that a system crash can be caused by something such as a device driver problem, due to the inter-dependancy of the system components. With a Microkernel, a much "leaner" approch is used and many services, other than minimal ones such as memory management, are performed by user-space programs on request by System Calls, leading to an easier-to-maintain kernel. There may be occassions where the system is slowed down due to the number of system calls required, however. Some kernels have been developed that are able to be used by any operating system - an example is the Mach kernel. 
 
 
 
Copyright © BlueGoose Systems 2007
Home