Home » Design approaches in Operating System

Design approaches in Operating System

by Online Tutorials Library

Design approaches in Operating System

The operating system may be implemented with the assistance of several structures. The structure of the operating system is mostly determined by how the many common components of the OS are integrated and merged into the kernel. In this article, you will learn the following structure of the OS. Various structures are used in the design of the operating system. These structures are as follows:

  1. Simple Structure
  2. Micro-Kernel Structure
  3. Layered Structure

Simple Structure

Such OS’s are small, simple, and limited, with no well-defined structure. There is a lack of separation between the interfaces and levels of functionality. The MS-DOS is the best example of such an operating system. Application programs in MS-DOS can access basic I/O functions. If one of the user programs fails on these OSs, the complete system crashes. Below is the diagram of the MS-DOS structure that may help you understand the simple structure.

Design approaches in Operating System

Advantages and Disadvantages of Simple Structure

There are various advantages and disadvantages of the Simple Structure. Some advantages and disadvantages of the Simple Structure are as follows:

Advantages

  1. It provides superior application performance due to the limited interfaces between the application program and the hardware.
  2. It is simple for kernel developers to create such an operating system.

Disadvantages

  1. The structure is quite complex because there are no apparent boundaries between modules.
  2. It does not impose data concealment in the operating system.

Micro-Kernel Structure

This micro-kernel structure creates the OS by eliminating all non-essential kernel components and implementing them as user programs and systems. Therefore, a smaller kernel is known as a micro-kernel.

The benefits of this micro-kernel structure are that all new services must be added to userspace rather than the kernel, and the kernel does not require to be updated. Therefore, it is more secure and trustworthy. If a service fails, the remainder of the OS is unaffected. Mac OS is the best instance of this type of operating system.

Advantages and Disadvantages of Micro-Kernel Structure

There are various advantages and disadvantages of the Micro-Kernel Structure. Some advantages and disadvantages of the Micro-Kernel Structure are as follows:

Advantages

  1. It allows the OS to be portable across platforms.
  2. They can be effectively tested because the microkernels are small.

Disadvantages

  1. The performance of the system suffers as the level of inter-module communication rises.

Layered Structure

An operating system can be divided into sections while retaining far more control over the system. The OS is divided into layers in this arrangement (levels). The hardware is on the bottom layer (layer 0), and the user interface is on the top layer (layer N). These layers are designed in such a way that each layer only requires the functions of the lower-level layers. Debugging is simplified because if lower-level layers are debugged, and an error occurs during debugging, the error must occur only on that layer. The lower-level layers have been thoroughly tested.

Design approaches in Operating System

UNIX is the best example of the Layered Structure. The main disadvantage of this structure is that data must be updated and sent on to each layer, which adds overhead to the system. Furthermore, careful planning of the layers is required because a layer may use only lower-level layers.

Advantages and Disadvantages of Layered Structure

There are various advantages and disadvantages of the Layered Structure. Some advantages and disadvantages of the Layered Structure are as follows:

Advantages

  1. Layering makes it easier to improve the OS as the implementation of a layer may be changed easily without affecting the other layers.
  2. Debugging and system verification are simple to carry out.

Disadvantages

  1. When compared to a simple structure, this structure degrades application performance.
  2. It needs better planning to construct the layers because higher layers only utilize the functionalities of lower layers.

Modular structure or approach

It is regarded as the best approach for an operating system. It involves designing a modular kernel. It is comparable to a layered structure in that each kernel has specified and protected interfaces, but it is more flexible because a module may call any other module. The kernel contains only a limited number of basic components, and extra services are added to the kernel as dynamically loadable modules either during runtime or at boot time.


You may also like