This PPT aims to provide information about a Kernel, its functions, its types along with their advantages and disadvantages and how it differs from an Operating System.
2. Table of Contents
2
Kernel
Web Hosting
Functions of Kernel
Difference between Operating System
and Kernel
Types of Kernels
Monolithic Kernel
Advantages and Disadvantages of
Monolithic Kernel
Micro Kernel
Advantages and
Disadvantages of Micro
Kernel
Hybrid Kernel
Advantages and
Disadvantages of Hybrid
Kernel
Nano Kernel
Advantages and
Disadvantages of Nano
Kernel
Exo Kernel
Advantages and
Disadvantages of Exo Kernel
3. It refers to a computer program which acts as a server’s operating system’s central
component. It functions as a communication manager between the resources of a server
(memory, processor etc.) and the user’s applications (software). It is an Operating System’s
most vital component and remains active till the time the Operating System is not shut down.
The Operating System controls the entire device. This results in the Kernel having full control
over all that exists in the system/device. As soon as a system starts, the Kernel is the very
first computer program that is loaded into memory, post the bootloader. This happens because
the Kernel is responsible for fulfilling activities that involve the management of memory, disk,
task etc. It makes the choice between the processes that the processor needs to execute and
those that the main memory needs to retain to execute.
It functions as an interface between the user applications and the system’s hardware
components. A System Call refers to the request made by any process to the Kernel, when the
Kernel links applications to data processing that happens in the hardware.
3
Kernel
4. Any reference to servers makes it worth mentioning the web servers of
web hosting companies. Web hosting companies lease server space to
store and make available the files of any website to ensure its
accessibility over the Internet. These companies, also referred to as web
hosts, provide all the services and technology that are required for web
hosting.
These web hosting companies can be referred to as the “Best Windows
Hosting Company” or as the “Top Cloud Hosting Company” or even as
“Website Hosting Companies in India”.
Web Hosting
4
5. Functions of Kernel
Ensuring communication between hardware and user level
application
Controlling task management
Controlling memory management
Controlling disk management
Deciding incoming processes’ state
5
6. Difference between Operating System and Kernel
6
Operating System- It refers to a system software that acts as an interface
between user and hardware. Every system needs an Operating System to
function and it is the first program to load after any system boots. Its types
are single and multiuser Operating Systems, Realtime Operating System,
distributed Operating System, multiprocessor Operating System.
Kernel- It refers to that system software which is an Operating System’s part
and functions as an interface between the hardware and applications. Every
Operating System requires Kernel in order to work. As soon as the Operating
System loads, it is the very initial program that loads. Monolithic and Micro
Kernel are the two types of Kernels that exist.
7. Types of Kernels
7
There are 5 main types of Kernels which are mentioned here, in no particular
order. Monolithic Kernels, Micro Kernel, Hybrid Kernel, Nano Kernel and Exo
Kernel.
The examples of Monolithic Kernels are Linux, Unix, XTS-400, Open VMS etc.
Micro Kernel’s examples are L4, Mach, AmigaOS, K42, Minix etc. Windows NT,
BeOS, Netware etc. are the examples of Hybrid Kernel. EROS is an example of
Nano Kernel. The examples of Exo Kernel are Nemesis, ExOS etc.
All of these types of Kernels are described in more detail in the following
slides.
9. Monolithic Kernel
9
In this type of Kernel all the services that are related to the Operating System
operate in the Kernel space. This means that the implementation of the user
services and the kernel services happen in the same memory space. This
results in an increase in the size of the Kernel and in turn leads to an increase
in the Operating System’s size. It also ensures faster execution of process
owing to not having separate user space and Kernel space.
10. Advantages and Disadvantages of
Monolithic Kernel
10
Advantages- Its performance is good. It ensures fast execution of process.
Disadvantages- Millions of dependencies exist in it, between the lines of code
and the system components. In the event that any service fails, system failure
becomes unavoidable. The entire Operating System has to be modified when
there is any addition of new services.
11. Micro Kernel
11
In this types of a Kernel, different spaces are used to implement the user
services and the Kernel services. The size of this type of Kernel decreases
because the user space and the Kernel space are separate in it. This results in
reducing the Operating System’s size as well. It offers more stability. There
are less services in Kernel space.
12. Advantages and Disadvantages of Micro
Kernel
12
Advantages- It offers more stability. Addition of new services is easy in it.
Disadvantages- There are too many context switches and system calls in it.
13. Hybrid Kernel
13
It refers to a Kernel that combines a Monolithic and a Micro Kernel to ensure
that the speed provided by a Monolithic Kernel is available along with the
stability and modularity that is offered by a Micro Kernel.
14. Advantages and Disadvantages of
Hybrid Kernel
14
Advantage- It ensures the availability of speed (Monolithic Kernel) along with
modularity and stability (Micro Kernel).
Disadvantage- It retains the similarities of a Monolithic Kernel despite being a
combination type of Kernel.
15. Nano Kernel
15
In this type of a Kernel, the entire code of the Kernel is very small. A
nanosecond clock resolution is supported by this type of a Kernel. Hardware
abstraction is offered in it, sans system services. Since Micro Kernels do not
offer system services either, Nano kernels have become analogous to Micro
Kernels.
16. Advantages and Disadvantages of Nano Kernel
16
Advantage- It provides abstractions related to hardware, sans system
services.
Disadvantage- There is less usage of it, as it is similar to a Micro Kernel.
17. Exo Kernel
17
In this type of a Kernel, the management and resource protection are
separate from each other. This ensures customization that is specific to
applications to be performed by the users. An end-to-end principle is followed
by this type of a Kernel. It has the least amount of hardware abstractions and
Physical resources are allocated to applications by it.
18. Advantages and Disadvantages of Exo Kernel
18
Advantage- It has the least amount of hardware abstractions.
Disadvantage- It has a very complex design.