EmbLogic's Blog

Kernel

Kernel
Definition – What does Kernel mean?
A kernel is the core component of an operating system. Using interprocess communication and system calls, it
acts as a bridge between applications and the data processing performed at the hardware level.
When an operating system is loaded into memory, the kernel loads first and remains in memory until the
operating system is shut down again. The kernel is responsible for low-level tasks such as disk management,
task management and memory management.
Techopedia explains Kernel
A computer kernel interfaces between the three major computer hardware components, providing services
between the application/user interface and the CPU, memory and other hardware I/O devices.
The kernel provides and manages computer resources, allowing other programs to run and use these resources.
The kernel also sets up memory address space for applications, loads files with application code into memory,
sets up the execution stack for programs and branches out to particular locations inside programs for
execution.
The kernel is responsible for:
Process management for application execution
Memory management, allocation and I/O
Device management through the use of device drivers
System call control, which is essential for the execution of kernel services
There are five types of kernels:
1. Monolithic Kernels: All operating system services run along the main kernel thread in a monolithic
kernel, which also resides in the same memory area, thereby providing powerful and rich hardware
access.
2. Microkernels: Define a simple abstraction over hardware that use primitives or system calls to
implement minimum OS services such as multitasking, memory management and interprocess
communication.
3. Hybrid Kernels: Run a few services in the kernel space to reduce the performance overhead of
traditional microkernels where the kernel code is still run as a server in the user space.
4. Nano Kernels: Simplify the memory requirement by delegating services, including the basic ones like
interrupt controllers or timers to device drivers.
5. Exo Kernels: Allocate physical hardware resources such as processor time and disk block to other
programs, which can link to library operating systems that use the kernel to simulate operating system

Leave a Reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>