WHAT IS KERNAL(OPERATING SYSTEM IN SYSTEMS) & DIFFERENT KIND OF KERNALS AND ITS FUNCTIONS.
WHAT IS KERNAL(OPERATING SYSTEM IN SYSTEMS)AND DIFFERENT KIND OF KERNALS AND ITS FUNCTIONS.
-BY SUNILKUMAR CHOUDARI
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.
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.
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 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:
- 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.
- 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.
- 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.
- Nano
Kernels: Simplify the memory requirement by delegating services, including
the basic ones like interrupt controllers or timers to device drivers.
- 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 abstractions.
The central
processing unit (CPU)
This central component of a computer system
is responsible for running or executing programs.
The kernel takes responsibility for deciding at any time which of the many
running programs should be allocated to the processor or processors (each of
which can usually run only one program at a time).
Random-access memory (RAM)
Random-access memory is
used to store both program instructions and data. Typically, both need to be
present in memory in order for a program to execute. Often multiple programs
will want access to memory, frequently demanding more memory than the computer
has available. The kernel is responsible for deciding which memory each process
can use, and determining what to do when not enough memory is available.
Input/output (I/O) devices
I/O devices include such peripherals as
keyboards, mice, disk drives, printers, USB devices, network adapters,
and display
devices. The kernel allocates requests from applications to perform
I/O to an appropriate device and provides convenient methods for using the
device (typically abstracted to the point where the application does not need
to know implementation details of the device).
Key aspects
necessary in resource management are the definition of an execution domain (address space) and the
protection mechanism used to mediate the accesses to the resources within a
domain.
Kernels also
usually provide methods for synchronization and communication between processes
called inter-process communication (IPC).
A kernel may
implement these features itself, or rely on some of the processes it runs to
provide the facilities to other processes, although in this case it must
provide some means of IPC to allow processes to access the facilities provided
by each other.
Finally, a kernel
must provide running programs with a method to make requests to access these
facilities.
ABOUT AUTHOR-
-SUNILKUMAR.CHOUDARI