0% found this document useful (0 votes)
2 views

Operating System Part3-OS Structure

The kernel is the core component of an operating system, managing hardware and software interactions and ensuring communication between them. Various operating system structures include simple, monolithic, layered, micro-kernel, exokernel, and virtual machines, each with distinct characteristics and functionalities. These structures determine how the OS components are organized and interact, affecting system performance and reliability.

Uploaded by

bgmiguestid23
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
2 views

Operating System Part3-OS Structure

The kernel is the core component of an operating system, managing hardware and software interactions and ensuring communication between them. Various operating system structures include simple, monolithic, layered, micro-kernel, exokernel, and virtual machines, each with distinct characteristics and functionalities. These structures determine how the OS components are organized and interact, affecting system performance and reliability.

Uploaded by

bgmiguestid23
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 5

What is Kernel in Operating System?

Kernel is the core part of an OS(Operating system); hence it has full control over
everything in the system. Each operation of hardware and software is managed
and administrated by the kernel.
It acts as a bridge between applications and data processing done at the hardware
level. It is the central component of an OS.
It is the part of the OS that always resides in computer memory and enables the
communication between software and hardware components.
It is the computer program that first loaded on start-up the system (After the
bootloader). Once it is loaded, it manages the remaining start-ups. It also
manages memory, peripheral, and I/O requests from software. Moreover, it
translates all I/O requests into data processing instructions for the CPU. It
manages other tasks also such as memory management, task management, and
disk management.
A Kernel is kept and usually loaded into separate memory space, known as
protected Kernel space. It is protected from being accessed by application
programs or less important parts of OS.
Other application programs such as browser, word processor, audio & video
player use separate memory space known as user-space.
Due to these two separate spaces, user data and kernel data don't interfere with
each other and do not cause any instability and slowness.

What is an operating System Structure?


Operating system structure can be thought of as the strategy for connecting and
incorporating various operating system components within the kernel.
Operating systems are implemented using many types of structures, as will be
discussed below:

1.SIMPLE STRUCTURE
It is the most straightforward operating system structure, but it lacks definition and
is only appropriate for usage with tiny and restricted systems. Since the interfaces
and degrees of functionality in this structure are clearly defined, programs are
able to access I/O routines, which may result in unauthorized access to I/O
procedures.
This organizational structure is used by MS-DOS.
There are four layers that make up the MS-DOS operating system, and each has
its own set of features.
These layers include ROM BIOS device drivers, MS-DOS device drivers,
application programs, and system programs.
The MS-DOS operating system benefits from layering because each level can be
defined independently and, when necessary, can interact with one another.
Because MS-DOS systems have a low level of abstraction, programs and I/O
procedures are visible to end users, giving them the potential for unwanted
access.

2.MONOLITHIC STRUCTURE
The monolithic operating system controls all aspects of the operating system's
operation, including file management, memory management, device management,
and operational operations.
The core of an operating system for computers is called the kernel (OS). All
other System components are provided with fundamental services by the kernel.
The operating system and the hardware use it as their main interface. When an
operating system is built into a single piece of hardware, such as a keyboard or
mouse, the kernel can directly access all of its resources.

The following diagram represents the monolithic structure:


3.LAYERED STRUCTURE
The OS is separated into layers or levels in this kind of arrangement. Layer 0
(the lowest layer) contains the hardware, and layer 1 (the highest layer) contains
the user interface (layer N). These layers are organized hierarchically, with the top-
level layers making use of the capabilities of the lower-level ones.
The functionalities of each layer are separated in this method, and abstraction is
also an option. Because layered structures are hierarchical, debugging is simpler,
therefore all lower-level layers are debugged before the upper layer is
examined. As a result, the present layer alone has to be reviewed since all the
lower layers have already been examined.
The image below shows how OS is organized into layers:

4.MICRO-KERNEL STRUCTURE
The operating system is created using a micro-kernel framework that strips the
kernel of any unnecessary parts. Systems and user applications are used to
implement these optional kernel components. So, Micro-Kernels is the name
given to these systems that have been developed.
Each Micro-Kernel is created separately and is kept apart from the others. As a
result, the system is now more trustworthy and secure. If one Micro-Kernel
malfunctions, the remaining operating system is unaffected and continues to
function normally.
The image below shows Micro-Kernel Operating System Structure:

5.EXOKERNEL
An Operating System called Exokernel was created at MIT with the goal of
offering application-level management of hardware resources. The exokernel
architecture's goal is to enable application-specific customization by separating
resource management from protection. Exokernel size tends to be minimal due
to its limited operability.
Because the OS sits between the programs and the actual hardware, it will
always have an effect on the functionality, performance, and breadth of the apps
that are developed on it. By rejecting the idea that an operating system must
offer abstractions upon which to base applications, the exokernel operating
system makes an effort to solve this issue. The goal is to give developers as few
restriction on the use of abstractions as possible while yet allowing them the
freedom to do so when necessary. Because of the way the exokernel architecture
is designed, a single tiny kernel is responsible for moving all hardware
abstractions into unreliable libraries known as library operating systems.
Exokernels differ from micro- and monolithic kernels in that their primary
objective is to prevent forced abstraction.

6.VIRTUAL MACHINES (VMs)


The hardware of our personal computer, including the CPU, disc drives, RAM,
and NIC (Network Interface Card), is abstracted by a virtual machine into a
variety of various execution contexts based on our needs, giving us the
impression that each execution environment is a separate computer. A virtual
box is an example of it.
Using CPU scheduling and virtual memory techniques, an operating system
allows us to execute multiple processes simultaneously while giving the
impression that each one is using a separate processor and virtual memory.
System calls and a file system are examples of extra functionalities that a
process can have that the hardware is unable to give. Instead of offering these
extra features, the virtual machine method just offers an interface that is similar
to that of the most fundamental hardware. A virtual duplicate of the computer
system underneath is made available to each process.

Disk systems are the fundamental problem with the virtual machine technique.
If the actual machine only has three-disc drives but needs to host seven virtual
machines, let's imagine that. It is obvious that it is impossible to assign a disc
drive to every virtual machine because the program that creates virtual
machines would require a sizable amount of disc space in order to offer virtual
memory and spooling. The provision of virtual discs is the solution.
The result is that users get their own virtual machines. They can then use any of
the operating systems or software programs that are installed on the machine
below. Virtual machine software is concerned with programming numerous
virtual machines simultaneously into a physical machine; it is not required to
take into account any user-support software. With this configuration, it may be
possible to break the challenge of building an interactive system for several users
into two manageable chunks.

You might also like