There are different design structures available
a. Monolithic System
b. Layered System
d. Microkernels
e. Simple Structure
A.) The monolithic operating system is a very basic operating system in which file management, memory management, device management, and process management is directly controlled within the kernel. All these components like file management, memory management etc. is located within the kernel.
Monolithic system tree diagram
Monolithic Architecture Diagram
Advantages of the monolithic operating system
Simple structure: This type of operating system has a simple structure. All the components needed for processing are embedded into the kernel.
Works for smaller tasks:
It works better for performing smaller tasks as it can handle limited resources.
Communication between components:All the components can directly communicate with each other and also with the kernel.
Fast operating system:The code to make monolithic kernel is very fast and robust.
Disadvantages of a monolithic operating system
Code written in this operating system (OS) is difficult to port.
Monolithic OS has more tendencies to generate errors and bugs. The reason is that user processes use same address locations as the kernel.
Adding and removing features from monolithic OS is very difficult. All the code needs to be rewritten and recompiled to add or remove any feature.
Some examples of monolithic operating system
VMS
Linux
OS/360
OpenVMS
Multics
AIX
BSD
B) SIMPLE STRUCTURE
In MS-DOS, applications may bypass the operating system.
Operating systems such as MS-DOS and the original UNIX did not have well-defined structures.
There was no user and kernel, and so errors in applications could cause the whole system to crash.
C.) LAYERED STRUCTURE
This approach breaks up the operating system into different layers.
This allows implementers to change the inner workings, and increases modularity.
As long as the external interface of the routines doesn’t change, developers have more freedom to change the inner workings of the routines.
With the layered approach, the bottom layer is the hardware, while the highest layer is the user interface.
The main advantage
Simplicity of construction
Simple to debug errors
The disadvantage
It is less efficient than other structures in implementations.
Difficulty in defining the various layers.
The Microsoft Windows NT Operating System. The lowest level is a monolithic kernel, but many OS components are at a higher level, but still part of the OS.
D) MICROKERNELS
This structures the operating system by removing all nonessential portions of the kernel and implementing them as system and user level programs.
Generally they provide minimal process and memory management, and a communications facility.
Communication between components of the OS is provided by message passing.
The Advantages of the microkernel are as follows:
Extending the operating system becomes much easier.
Any changes to the kernel tend to be fewer, since the kernel is smaller.
The microkernel also provides more security and reliability.
Disadvantage is poor performance due to increased system overhead from message passing.
Microkernel Architecture.
Modular Structure
Here, the kernel has a set of core components and links in additional services via modules, either at boot time or during run time. This type of design is common in modern implementations of UNIX, such as Solaris, Linux, and Mac OS X, as well as Windows.
The Solaris operating system structure, shown in the figure below is
organized around a core kernel with seven types of l