Published on

Operating System | Types Of OS | History of OS | Computer Fundamental

Operting-System

What is Operating System?

An Operating System (OS) is a software that acts as an interface between computer hardware components and the user. Every computer system must have at least one operating system to run other programs. Applications like Web Browsers, MS Word, Notepad amd Games, etc., need some environment to run and perform its tasks.

Structure of a Computer System

  1. User (People who are using the computer)
  2. Applications Programs (Compiler, Databases, Games Video Player, Browsers, etc.)
  3. System Programs (Shells , Editor, Compiler etc.)
  4. Operating System ( A special program that runs on the computer to provide the environment for the other programs to run)
  5. Hardware (CPU, Memory, Hard Disk, etc.)

What does Operating System do?

  1. Process Management
  2. Process Synchronization
  3. Memory Management
  4. CPU Scheduling
  5. File Management
  6. Security

Current Operating Systems with Market Share

Operating-System-usage

History of Operating System

  • Operating systems were first developed in the late 1950s to manage tape storage.
  • The General Motors Research Lab implemented the first OS in the early 1950s for their IBM 701
  • In the mid-1960s, operating systems started to use disks
  • In the late 1960s, the first version of the Unix OS was developed
  • The first OS built by Microsoft was DOS. It was built in 1981 by purchasing the 86-DOS software from a Seattle company.
  • The present-day popular OS Windows first came to existence in 1985 when a GUI was created and paired with MS-DOS.

Types of Operating System

  1. Batch Operating System
  2. Time-Sharing Operating System
  3. Embedded Operating System
  4. Multiprogramming Operating System
  5. Network Operating System
  6. Distributed Operating System
  7. Multiprocessing Operating System
  8. Real-Time Operating System

Batch Operating System

In Batch Operating System, there is no direct interaction between user and computer. Therefore, the user needs to prepare jobs and save offline mode to punch card or paper tape or magnetic tape. After creating the jobs, hand it over to the computer operator; then the operator sort or creates the similar types of batches like B2, B3, and B4. Now, the computer operator submits batches into the CPU to execute the jobs one by one. After that, CPUs start executing jobs, and when all jobs are finished, the computer operator provides the output to the user.

Batch-Operating-System

Time-Sharing Operating System

It is the type of operating system that allows us to connect many people located at different locations to share and use a specific system at a single time. The time-sharing operating system is the logical extension of the multiprogramming through which users can run multiple tasks concurrently. Furthermore, it provides each user his terminal for input or output that impacts the program or processor currently running on the system. It represents the CPU's time is shared between many user processes. Or, the processor's time that is shared between multiple users simultaneously termed as time-sharing.

Time-Sahring-Operating-System

Embedded Operating System

The Embedded operating system is the specific purpose operating system used in the computer system's embedded hardware configuration. These operating systems are designed to work on dedicated devices like automated teller machines (ATMs), airplane systems, digital home assistants, and the internet of things (IoT) devices.

Multiprogramming Operating System

Due to the CPU's underutilization and the waiting for I/O resource till that CPU remains idle. It shows the improper use of system resources. Hence, the operating system introduces a new concept that is known as multiprogramming. A multiprogramming operating system refers to the concepts wherein two or more processes or programs activate simultaneously to execute the processes one after another by the same computer system. When a program is in run mode and uses CPU, another program or file uses I/O resources at the same time or waiting for another system resources to become available. It improves the use of system resources, thereby increasing system throughput. Such a system is known as a multiprogramming operating system.

Network Operating System

A network operating system is an important category of the operating system that operates on a server using network devices like a switch, router, or firewall to handle data, applications and other network resources. It provides connectivity among the autonomous operating system, called as a network operating system. The network operating system is also useful to share data, files, hardware devices and printer resources among multiple computers to communicate with each other.

Distributed Operating system

A distributed operating system provides an environment in which multiple independent CPU or processor communicates with each other through physically separate computational nodes. Each node contains specific software that communicates with the global aggregate operating system. With the ease of a distributed system, the programmer or developer can easily access any operating system and resource to execute the computational tasks and achieve a common goal. It is the extension of a network operating system that facilitates a high degree of connectivity to communicate with other users over the network.

Multiprocessing Operating System

It is the type of operating system that refers to using two or more central processing units (CPU) in a single computer system. However, these multiprocessor systems or parallel operating systems are used to increase the computer system's efficiency. With the use of a multiprocessor system, they share computer bus, clock, memory and input or output device for concurrent execution of process or program and resource management in the CPU.

Real-Time Operating System

A real-time operating system is an important type of operating system used to provide services and data processing resources for applications in which the time interval required to process & respond to input/output should be so small without any delay real-time system. For example, real-life situations governing an automatic car, traffic signal, nuclear reactor or an aircraft require an immediate response to complete tasks within a specified time delay. Hence, a real-time operating system must be fast and responsive for an embedded system, weapon system, robots, scientific research & experiments and various real-time objects.