In computing, the kernel is a computer program that manages input/output requests from software and translates them into data processing instructions for the central processing unit and other electronic components of a computer.
3. FORMAL DEFINITION
• In computing, the kernel is a computer program that manages
input/output requests from software and translates them into
data processing instructions for the central processing unit
and other electronic components of a computer.
• The kernel is a fundamental part of a modern computer's
operating system.
5. Atypical vision of acomputer architecture asaseries of
abstractionlayers:
hardware, firmware, assembler, kernel, operating system
and applications
6. FEATURES THAT KERNEL
PROVIDES:
•low-level scheduling of processes
(dispatching)
•inter-process communication
•process synchronization
•context switching
•manipulation of process control
blocks
•interrupt handling
•process creation and destruction
•process suspension and
resumption
7. KERNELBASICFACILITIES
Thekernel's primary purpose isto managethe
computer's resourcesand allow other programsto run
and usetheseresources.
Typically,the resourcesconsistof:
TheCPU,the processor.Thisisthe most central part of a
computer system,responsible for running or executing
programs onit.
Thekernel takesresponsibility for deciding at any time
which of the manyrunning programs shouldbe allocated
to the processor or processors(eachof which canusually
run only one program at atime)
8. KERNELBASIC FACILITIES
Thekernel is responsible for deciding whichmemory
eachprocesscanuse,and determining what to do when
not enough isavailable.
AnyInput/Output devicespresent in the computer, such
askeyboard, mouse,disk drives, printers, displays,etc. The
kernel allocates requests from applications to perform
I/O to anappropriate deviceand provides convenient
methods for usingthe device.
10. •Micro Kernel:
Only the very important parts like INTER process
communication(IPC) , basic schedular, basic memory handling ,
basic I/O primitives are placed in kernel. Others are maintained
as server processes in user space .
Communication is done by message passing .
The kernel is broken down into separate processes, known as
servers.. The communication in microkernels is done via
message passing. The servers communicate through InterProcess
Communication IPC. Servers invoke “services” from each other
by sending messages.
11. ADVANTAGES OF
MICROKERNEL
• Microkernels are easier to maintain than monolithic kernels.
• Crash resistant ( if one server fails, other servers can still work
efficiently.)
• Portable
• Smaller in Size
DISADVANTAGES OF MICROKERNEL:
Slower processing because of
additional message passing.
12. MONOLITHIC
KERNEL
•It runs every basic system service like process
and memory management, interrupt handling
and I/O communication, file system etc. in
kernel space. Examples are Linux, Unix.
•Advantages: performance
•Disadvantages: difficult to debug and maintain
13. HYBRID KERNEL:
•One other type of kernel is called a hybrid kernel which lies on
the boundary between monolithic kernels and microkernels.
This means it has qualities of both, but hybrid kernels cannot
be classified as a monolithic kernel or microkernel exclusively.
Combine the best of both worlds
•Speed and simple design of a monolithic kernel
•Modularity and stability of a microkernel
16. THE CENTRAL PROCESSING
UNIT
•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).
17. RANDOM ACCESS
MEMORY
•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.
18. INPUT/OUTPUT DEVICES
•I/O devices include such peripherals as keyboards, mice,
disk drives, printers, 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.
20. • THE KERNEL HAS UNIQUE QUALITIES. IT ENFORCES ITS
OWN RULES AND THE STAKES, MANAGING THE ENTIRE
SYSTEM AS THE KERNEL DOES, ARE CERTAINLY HIGHER.
Conclusion