Decoding Kotlin - Your guide to solving the mysterious in Kotlin.pptx
Embedded OS Kernel Features & Types
1. Embedded Operating System-Kernel Features
o What is a Kernel?
A kernel is the core component of an operating system. 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.
2. A kernel provides the most basic interface between the computer itself and
rest of the operating system.
It is (also called nuclus) set of perimitive facilities over which the rest of the
OS is built.
Whenever a kernel makes requests ,it is called system call.
3. Functions of Kernel in operating system
The main functions as follows:-
1. Kernel provides a mechanism for creation and deletion of processes
2. It provide CPU scheduling ,memory management, and device management and device
management for these processes
3. Kernel provides synchronization tools so that the process can syncronize their actions
4. It provides communication tools so that process can communicate with each other
For Central Processing Unit(CPU):-
The kernel takes responsibility for deciding at any time which of the many running programs
should be allocated to the processors.
Memory Management:-
The kernel is responsible for deciding which memory each process can use , and determining what
to do when not enough memory is available
The kernel has full access to the system’s memory and must allow processes to safely access this
memory as they require it
Input/output Devices:-
The kernel allocates requests from applications to perform I/O to an appropriate device.
Device Management:-
A kernel contains a list of available devices.
Includes scheduling and process management
4. Types Of Kernel
The five main types of kernels are:
• Monolithic Kernel
• Microkernel
• Hybrid Kernel
• Nano Kernel
• Exo Kernel
Monolithic Kernel: Monolithic kernels are the simplest and most common type of
Kernel. They include the core functionality of the operating system and support all
devices connected to it. In this, the user and kernel services are implemented in the
same memory space. The size of the kernel increases, which in turn increases
the size of the operating system. The main benefit is that the process execution
is faster as there is no separate memory space for the user and Kernel.
Microkernel:Microkernels are a newer development. They include only the
essential services and devices required for the system to function. This results in a
smaller kernel that is faster and uses less memory. It has separate User Space
and Kernel Space. This reduces the size of the Kernel and results in reducing the
size of the operating system.
5. Hybrid kernels :-Hybrid kernels combine both monolithic and microkernels.
They include more services than microkernels but less than monolithic kernels.
This allows them to offer some of the benefits of both kernels.
Nano Kernel: Nano kernels are the smallest type of Kernel, consisting of only a
few thousand lines of code. It means that the code executing in the privileged
mode of the hardware is minimal. They are used primarily in embedded
systems or devices with limited resources
Exo Kernel: This Kernel has separate resource protection and management. It
is suitable for use when performing application-specific customization. Exo
kernels are designed for use in mobile devices. They are a variation of
microkernels that include additional features specifically for mobile devices,
such as power management and support for multiple processors.
Disadvantages of the Kernel :-
• The developer should need to consider the particular requirements of the
device. Bt, not all developers are familiar with the specific hardware
requirements of each device.
• The Kernel can be vulnerable to attacks. If an attacker can exploit a
vulnerability in the Kernel, they could gain access to your system and damage
or steal your data.