Different Types of Operating Systems

The earlier form of computers were mainframes where these are deficient in the process of the operating systems and the types of operating systems. In the mainframes, every individual holds the individual responsibility for a specific period of time and they need to approach the machine having information and program, probably written on paper cards, paper tapes, or else magnetic tapes. Then the composed program will be dumped into the machine. After this, the machine will function until the time the completion or collapse of the program. The output of the programs will be debugged through panel lights, toggle kinds of switches, or else using control panel dials.

But with these machines, the time that is required for running programs gets worsened and the time taken to assign the equipment to the next individual gets increased. Consequent to this, there has to be an automated monitoring, minimal operating time, and lesser size of the machine. All these features led to the path of the development of the operating system. So, let us know what exactly an operating system is, its functionality, and different types of operating systems.


What is an Operating System?

The name operating system corresponds that it is the collection of multiple software that manages hardware resources of a computer and provides collective services to the user. Different types of Computer Operating Systems refer to the collection of different types of software. Every computer possesses an operating system to run other programs present in it.

Basic Operating System
Basic Operating System

These days operating system because it is observed in multiple devices ranging from personal computers to cell phones, particularly smartphones. For instance, almost every smartphone makes use of the newest android operating system.

Any operating system performs a few of the basic tasks such as recognizing the input data from a keyboard, sending output to the display screen, keeping files and directories of the disk, and controlling the peripheral devices such as printers.  An operating system can perform a single task or operation as well as multiple tasks or operations at any time.

The Architecture of Types of Operating Systems

The operating systems control the hardware resources of a computer. The kernel and shell are the parts of the operating system that perform essential operations.

PCBWay

OS Architecture
OS Architecture

When a user gives commands for performing any operation, the request goes to the shell part, which is also known as an interpreter. The shell part then translates the human program into machine code and then transfers the request to the kernel part.

When the kernel receives the request from the shell, it processes the request and displays the result on the screen. The kernel is also known as the heart of the operating system as every operation is performed by it.

Shell

The shell is a part of the software which is placed between the user and the kernel, and it provides services of the kernel. The shell thus acts as an interpreter to convert the commands from the user to the machine code. Shells present in different types of operating systems are of two types: command-line shells and graphical shells.

The command-line shells provide a command-line interface while graphical line shells provide a graphical user interface. Though both shells perform operations, the graphical user interface shells perform slower than the command line interface shells.

Types of shells

  • Korn shell
  • Bourne shell
  • C shell
  • POSIX shell

Kernel

The kernel is a part of the software. It is like a bridge between the shell and hardware. It is responsible for running programs and providing secure access to the machine’s hardware. The kernel is used for scheduling, i.e., it maintains a time table for all processes. And the types of kernels are listed a follows:

  • Monolithic kernel
  • Microkernels
  • Exokernels
  • Hybrid kernels

Computer Operating System Functions

An operating system performs the following functions:

  • Memory management
  • Task or process management
  • Storage management
  • Device or input/output management
  • Kernel or scheduling

Memory Management

Memory management is the process of managing computer memory. Computer memories are of two types: primary and secondary memory. The memory portion for programs and software is allocated after releasing the memory space.

Operating System Memory Management
Operating System Memory Management

Memory management is important for the operating system involved in multitasking wherein the OS requires switching of memory space from one process to another. Every single program requires some memory space for its execution, which is provided by the memory management unit. A CPU consists of two types of memory modules: virtual memory and physical memory. The virtual memory is RAM memory, and the physical memory is a hard disk memory. An operating system manages the virtual memory address spaces, and the assignment of real memory is followed by the virtual memory address.

Before executing instructions, the CPU sends the virtual address to the memory management unit. Subsequently, the MMU sends the physical address to the real memory, and then the real memory allocates space for the programs or data.

Task or Process Management

Process management is an instance of a program that is being executed. The process consists of a number of elements, such as an identifier, program counter, memory pointer and context data, and so on. The Process is actually an execution of those instructions.

Process Management
Process Management

There are two types of process methods: single process and multitasking method. The single process method deals with a single application running at a time. The multitasking method allows multiple processes at a time.

Storage Management

Storage management is a function of the operating system that handles memory allocation of the data. The system consists of different types of memory devices, such as primary storage memory (RAM), secondary storage memory, (Hard disk), and cache storage memory.

Instructions and data are placed in the primary storage or cache memory, which is referenced by the running program. However, the data is lost when the power supply cut off. The secondary memory is a permanent storage device. The operating system allocates a storage place when new files are created and the request for memory access is scheduled.

Device or Input/output Management

In computer architecture, the combination of CPU and main memory is the brain of the computer, and it is managed by the input and output resources. Humans interact with the machines by providing information through I/O devices.

The display, keyboard, printer, and mouse are I/O devices. The management of all these devices affects the throughput of a system; therefore, the input and output management of the system is a primary responsibility of the operating system

Scheduling

Scheduling by an operating system is a process of controlling and prioritizing the messages sent to a processor. The operating system maintains a constant amount of work for the processor and thus balances the workload. As a result, each process is completed within a stipulated time frame.

Hence, scheduling is very important in real-time systems. The schedulers are mainly of three types:

  • Long term scheduler
  • Short term scheduler
  • Medium-term schedule

Types of Operating systems

On a general basis, the computer operating systems are essentially categorized into two types:

Types of Operating Systems
Types of Operating Systems
  1. Normal Operating System
  2. Real-Time Operating System

Normal Operating System

The normal operating system is further classified into two types:

    • Character User Interface Operating System
    • Graphical User Interface Operating System
GUI and CUI
GUI and CUI

Character User Interface Operating System (CUI)

The CUI operating system is a text-based operating system, which is used for interacting with the software or files by typing commands to perform specific tasks. The command-line operating system uses only the keyboard to enter commands. The command-line operating systems include DOS and UNIX. The advanced command-line operating system is faster than the advanced   GUI operating system.

Graphical User Interface Operating System (GUI)

The graphical mode interface operating system is a mouse-based operating system (Windows Operating System, LINUX), wherein a user performs the tasks or operations without typing the commands from the keyboard. The files or icons can be opened or closed by clicking them with a mouse button.

In addition to this, the mouse and keyboard are used to control the GUI operating systems for several purposes. Most of the embedded-based projects are developed on this operating system. The advanced GUI operating system is slower than the command line operating system.

Real-time Operating System

Real-time operating systems are also known as multitasking operating systems. The normal operating system is responsible for managing the hardware resources of a computer. The RTOS performs these tasks, but it is specially designed to run applications at a scheduled or precise time with high reliability.

RTOS
RTOS

A real-time operating system is designed for real-time applications, such as embedded systems, industrial robots, scientific research equipment, and others. There are different types of operating systems in real-time, such as soft real-time operating systems and hard real-time operating systems.

Examples of RTOS

  • Linux
  • VxWorks
  • TRON
  • Windows CE

Hard Real-time System

The hard real-time system is a purely time constant system. For a hard real-time operating system, finishing the tasks within a deadline is very important for efficient system performance.

For example, for a given input, if a user expects the output after 10seconds, then the system should process the input data and give the output exactly after 10seconds. Here, the deadline is 10 seconds, and therefore, the system should not give the output after 11th sec or 9th sec.

Therefore, hard real-time systems are used in the army and defense.

Soft Real-time System

For a soft real-time system, meeting the deadline is not mandatory for every task. Therefore, a soft real-time system can miss the deadline by one or two seconds. However, if the system misses deadlines every time, this will degrade the system performance. Computers, audio, and video systems are examples of soft real-time systems. Nowadays, Androids are being widely used for applications like automatic gate openers.

In addition, there are many other different types of the operating systems on the computer along with their advantages and disadvantages. A few of the types can be explained as follows:

Batch Operating System

Individuals who operate in the batch operating system will not have direct communication with the computer. Every individual set up their task on any offline equipment such as punch cards and then load the prepared information into the computer. In order to enhance the processing speed, tasks that have a similar type of operation are grouped together and they are operated as a single group.

These machines perform the operations using operators and the operators take up the operation of sorting programs having the same functionality into batches. This is one of the extensively implemented operating systems.

Advantages

  • A huge amount of work can be easily handled in a repeated way
  • Different users can easily divide their batch systems
  • The inactive time in this batch systems is very minimal
  •  The time taken for completion of a task can be easily known by the processor when they are loaded into the machine in a queue format

Disadvantages

  • Batch operating systems are somewhat expensive
  • The debugging process is complicated
  • Only experienced persons should operate this system

Distributed Types of Operating Systems

A distributed operating system is the modern enhancement in the computer domain. This type of system is extensively used all across the world along with an extreme pace. Different independent interconnected computers will have communication across them through this distributed operating system. Every autonomous system holds its own processing and memory units. These systems are also termed loosely coupled systems and they have various sizes and operations.

The crucial advantage in this kind of operating system is that individuals can have the accessibility for software or documents those are not in the current operating system but exist on other systems those have connection within the current system. This means that there exists remote accessibility internal to the devices that are connected in the system.

Depending on the arrangement of various nodes, there are various types of distributed operating system and those are:

Peer to Peer – This system is included with nodes that have identical participants in data sharing. The entire functionality is shared across all the nodes. The nodes that have communication with others are termed as shared resources. This can be achieved through a network.

Client/Server – In the client/server systems, the request which is sent by the client is provided by the server system. A server system holds the ability to provide service for multiple clients at a time only when the client has contact with one server only. The client and the server devices will have their communication through a network and so they come under the classification of distributed systems.

Advantages

  • Data sharing can be done in a streamlined way where the entire nodes have a connection with each other
  • The process of adding additional nodes is so simple and the configuration is easily scalable as per the requirement
  • Failure of one node does not break down other nodes. All the other nodes can establish communication with each other node

Disadvantages

  • Providing enhanced security for all the connections and nodes is somewhat complicated
  • At the time of nodes transmission, some of the data might be lost
  • When compared with the individual user system, here the management of the database is quite complex
  • While the transmission of data from all nodes, data overloading may take place

Time-Sharing Operating System

This is the procedure where it allows connections for different people situated at different locations to share a specific system at a single time. This kind of operating system is signified as the logical expansion of multiprogramming. The name time-sharing corresponds that processors’ time is shared across various individuals at the same time. The main variation that is in between batch and time-shared operating systems is processor utilization and response time.

In the batch system, the main directive is to enhance processor utilization whereas in time-sharing operating systems, the directive is to decrease response time.

Various tasks are performed by CPU by shifting across the, whereas these switches happen so regularly. Because of this, every user can gain a quick response.

For instance, in the method of a transaction, the processor operates every individual program in a very short period of time. So, when there are ‘n’ individuals, every person can get their time period. When the command is submitted, then there will be a quick response. This operating system works on multiprogramming and processor scheduling to allocate every individual with a corresponding time period. The operating systems that are initially developed as a batch are now upgraded to time-shared systems.

A few of the advantages and disadvantages of time-sharing operating systems are:

Advantages

  • Quick response
  • Eliminates software duplication
  • Minimal processor idle time

Disadvantages

  • Reliability is the main concern
  • Both the data and programs are to be provided with enhanced security
  • Data communication is the issue

Multi-User Types of Operating Systems

It is a method of the operating system where it permits different users to get connected and function on a single operating system. People get interacted with it using computers or terminals that provide accessibility via a network or devices like printers. This kind of operating system needs to have enhanced communication with all the users in a balanced approach. This is because when a complication from one person raises, it should not impact other users who are in the sequence.

Features

  • Invisibility – This takes place at the lower end like formatting of the disk and others
  • Back end data processing – When there is no chance of data processing from the front end, this allows for back end data processing
  • Resources sharing – Various devices like hard disks, drivers, or printers can be shared, and also files or documents can be shared
  • Multiprocessing

There are mainly three types of multi user operating system and those are explained as follows:

Distributed Operating System

It is the assortment of various devices that are situated on various computer systems that communicate, function, and co-ordinates with the single consistent system to the individual. And through a network system, users can establish communication. Here, the resources are shared in the approach that different requests can be managed and every sperate request can be assured at the end. Mobile applications and digital banking are examples operated through a distributed operating system.

Time Sliced System

Here, every individual user is assigned with a short span of processor time which means that for every functionality, some period of time is allotted. These time segments appear to be minimal. The task that has to be operated is determined by the internal device named scheduler. This determines and operates the functionality based on priorities assigned.

Among the connected individuals, the operating system process user requests. This is the exclusive functionality in the time-sliced operating system which is not available in any others. For instance, mainframes.

Multiprocessor System

Here, at the same time, the system uses multiple processors. As the entire processors work consequentially, the time taken for the completion of the task is fast than that of a single-user type of operating system. The most general scenario of this type is the windows operating system where it can processor multiple tasks at a time such as playing music, working with excel, word document, browsing, and many others. More number of applications can be performed without disturbing the efficiency of others.

Advantages

The advantages of a multi user operating system are

  • Easy resource distribution
  • Extreme data backup
  • Used in libraries
  • Eliminates any kind of disruption
  • Improved speed and efficiency
  • Implemented in real-time applications

Disadvantages

The disadvantages of a multi user operating system are

  • As multiple computers function on a single system, it might allow the virus to the system easily
  • Privacy and confidentiality becomes an issue
  • The creation of multiple accounts in a single system might be risky and complicated sometimes

Apart from these, there exist many other different types of operating systems and those are:

  • Network OS
  • Multitasking OS
  • Clustered OS
  • Real-Time OS
  • Linux OS
  • Mac OS

So, this is all about the detailed concept of different types of operating systems. We have gone through the concepts of Operating System Working, architecture, types, advantages, and disadvantages. Therefore, here is a very simple question for all the enthusiastic readers: What are the advantages of the Linux operating system over Windows?

8 Comments

  1. Ha its correct information..

  2. Thanks… Yr… For providing the quality of information

  3. Ruth Mafale says:

    Very helpful indeed my assignment will done soon

  4. Android Online Training says:

    Needed to compose one simple word yet thanks for the suggestions that you are contributed here, please do keep updating us…

  5. Good Information…thanks for sharing the valuable updates

    1. Tarun Agarwal says:

      Hi Naresh
      Thank you.

  6. Good Information..thanks for sharing the valuable updates..

    1. Tarun Agarwal says:

      Hi Naresh
      Thank you

Add Comment