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

Operating System Structure

The document outlines various operating system structures, including Simple Structure, Monolithic Structure, Layered Structure, Micro-Kernel Structure, Exokernel, and Virtual Machines. Each structure has its own advantages and disadvantages, affecting performance, reliability, and complexity. The operating system serves as a crucial interface between user applications and hardware, and its structure is essential for effective functionality.

Uploaded by

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

Operating System Structure

The document outlines various operating system structures, including Simple Structure, Monolithic Structure, Layered Structure, Micro-Kernel Structure, Exokernel, and Virtual Machines. Each structure has its own advantages and disadvantages, affecting performance, reliability, and complexity. The operating system serves as a crucial interface between user applications and hardware, and its structure is essential for effective functionality.

Uploaded by

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

Operating System Structure

An operating system is a design that enables user application programs to communicate with the
hardware of the machine. The operating system should be built with the utmost care because it is
such a complicated structure and should be simple to use and modify. Partially developing the
operating system is a simple approach to accomplish this. Each of these components needs to
have distinct inputs, outputs, and functionalities.

Below are the operating system structure:

 Simple Structure
 Monolithic Structure
 Layered Approach Structure
 Micro-Kernel Structure
 Exo-Kernel Structure
 Virtual Machines

Operating System Structure

We want a clear structure to allow us to apply an operating system to our particular needs
because operating systems have complex structures. It is easier to create an operating system in
pieces, much as we break down larger issues into smaller, more manageable subproblems. Every
segment is also a part of the operating system. 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:

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 the MS-DOS operating system:

 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.
 If the system is built in layers, it will be simpler to design, manage, and update. Because
of this, simple structures can be used to build constrained systems that are less complex.
 When a user program fails, the operating system as whole crashes.
 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.

The following figure illustrates layering in simple structure:

Advantages of Simple Structure:

 Because there are only a few interfaces and levels, it is simple to develop.
 Because there are fewer layers between the hardware and the applications, it offers
superior performance.

Disadvantages of Simple Structure:


 The entire operating system breaks if just one user program malfunctions.
 Since the layers are interconnected, and in communication with one another, there is no
abstraction or data hiding.
 The operating system's operations are accessible to layers, which can result in data
tampering and system failure.

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 monolithic operating system is often referred to as the monolithic kernel. Multiple
programming techniques such as batch processing and time-sharing increase a processor's
usability. Working on top of the operating system and under complete command of all hardware,
the monolithic kernel performs the role of a virtual computer. This is an old operating system
that was used in banks to carry out simple tasks like batch processing and time-sharing, which
allows numerous users at different terminals to access the Operating System.

The following diagram represents the monolithic structure:


Advantages of Monolithic Structure:

 Because layering is unnecessary and the kernel alone is responsible for managing all
operations, it is easy to design and execute.
 Due to the fact that functions like memory management, file management, process
scheduling, etc., are implemented in the same address area, the monolithic kernel runs
rather quickly when compared to other systems. Utilizing the same address speeds up and
reduces the time required for address allocation for new processes.

Disadvantages of Monolithic Structure:

 The monolithic kernel's services are interconnected in address space and have an impact
on one another, so if any of them malfunctions, the entire system does as well.
 It is not adaptable. Therefore, launching a new service is difficult.

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:

Advantages of Layered Structure:

 Work duties are separated since each layer has its own functionality, and there is some
amount of abstraction.
 Debugging is simpler because the lower layers are examined first, followed by the top
layers.

Disadvantages of Layered Structure:

 Performance is compromised in layered structures due to layering.


 Construction of the layers requires careful design because upper layers only make use of
lower layers' capabilities.
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:

Advantages of Micro-Kernel Structure:

 It enables portability of the operating system across platforms.


 Due to the isolation of each Micro-Kernel, it is reliable and secure.
 The reduced size of Micro-Kernels allows for successful testing.
 The remaining operating system remains unaffected and keeps running properly even if a
component or Micro-Kernel fails.
Disadvantages of Micro-Kernel Structure:

 The performance of the system is decreased by increased inter-module communication.


 The construction of a system is complicated.

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.

Exokernel operating systems have a number of features, including:

 Enhanced application control support.


 Splits management and security apart.
 A secure transfer of abstractions is made to an unreliable library operating system.
 Brings up a low-level interface.
 Operating systems for libraries provide compatibility and portability.

Advantages of Exokernel Structure:

 Application performance is enhanced by it.


 Accurate resource allocation and revocation enable more effective utilisation of hardware
resources.
 New operating systems can be tested and developed more easily.
 Every user-space program is permitted to utilise its own customised memory
management.

Disadvantages of Exokernel Structure:

 A decline in consistency
 Exokernel interfaces have a complex architecture.

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.

We can develop a virtual machine for a variety of reasons, all of which are fundamentally
connected to the capacity to share the same underlying hardware while concurrently supporting
various execution environments, i.e., various operating systems.

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.

Advantages of Virtual Machines:

 Due to total isolation between each virtual machine and every other virtual machine,
there are no issues with security.
 A virtual machine may offer an architecture for the instruction set that is different from
that of actual computers.
 Simple availability, accessibility, and recovery convenience.

Disadvantages of Virtual Machines:

 Depending on the workload, operating numerous virtual machines simultaneously on a


host computer may have an adverse effect on one of them.
 When it comes to hardware access, virtual computers are less effective than physical
ones.

CONCLUSION

 The operating system makes it possible for the user to communicate with the hardware of
the computer. The operating system is used as the foundation for installing and using
system software.
 The interconnections between the various operating system components can be defined as
the operating system structure.
 The operating system is divided into various different structural types: simple structure,
monolithic approach, layered approach, micro-kernels, exokernels, and virtual machines.
 Each time one of these methods or structures changed, the OS became progressively
better.

You might also like