Classification of Operating System

By | September 7, 2021

Classification of Operating System

Classification of Operating System: The Operating systems may be classified into different tурes depending uрon the nature of interaction between the user and his/her program.

The various types of opeгating system are

  1. Single user орегating system
  2. Multi user орегating system
  3.  Simple batch processing operating system
  4. Multiprogramming operating system
  5. Multitasking operating system
  6. Parallel or multiprocessing operating system
  7. Time Sharing Operating System 
  8. Distributed operating system
  9. Real time operating system

1. Single User Operating System

  • In single user operating system, only a single user can access the computer at a particular time.
  • The computer, that is based on this operating system, has only single processor and executes only a single program at all the time.
  • This system provides all the resources such as CPU, I/O devices to a single user at all the time. Single user operating system is of two types:
  1. Single user, single-tasking operating system
  2. Single-user, multi-tasking operating system
  • The Single User, Single-tasking operating system as a single user to execute one program at a particular time. For example, MS-DOS and Palm OS for Palm handheld computers are single user, single tasking OS.
  • The Single User, Multi-tasking operating system allows a single user to execute multiple programs at a same time. For example, a user can perform different tasks such as making calculations in Excel sheet, printing a word document and download a file from the internet at the same time.
  • The main disadvantage of this operating system is that CPU sits idle for most of the time and is not utilized to its maximum.

Single User Operating System

2. Multi-User operating System

  • In a multi-user operating system, multiple numbers of users can access different resources of a computer at a same time.
  • The access is provided using a network that consists of various personal computers attached to a mainframe computer system.
  • The various personal computers can send and receive information to mainframe computer system.
  • Thus, the mainframe computer acts as the server and other personal computers act as clients for that server.
  • The examples of multi-user OS are UNIX, Windows 2000, Novell Netware

Multi-User operating System

3. Simple Batch Processing Operating System

  • Batch processing is one of the oldest method of running the programs.
  • The computers in the past were very large in size and their I/O devices were very different from those that are used today. The job processing was not interactive as it is today.
  • The users did not interact directly with computer system.
  • The users prepare their job that consisted of the program, data and some control information. This job was usually in form of punched cards.
  • The users submit their job to a computer operator. When a batch of programs have been collected, the operator loads this batch of programs into the computer at one time where they are executed one after the other.
  • Finally, the operator retrieves the output of these jobs and return them to the concerned users.
  • In this way many different jobs are processed, one after the other without any interaction from the users during program execution. In such a batch processing system, the various jobs of the users are collected in a queue. This process is known as spooling. Spooling is a short form of Simultaneous Peripheral Operations On Line.
  • Spooling refers to putting jobs in a buffer (an area in a memory or disk) Such a data can be output to printer and other devices. It is useful when device access data at different rates: In such a case buffer provides an area where data can rest until a slow device is ready to receive that data.

Simple Batch Processing Operating System

4. Multiprogramming Operating System

  • Multiprogramming operating system allows multiple users to execute multiple programs using a single CPU concurrently i.e. at the same time.
  • In multiprogramming several processes are kept in the main memory and CPU execute all these processes concurrently. It means, the CPU immediately switches from one process to next that are ready to get executed.

Difference between Multiprogramming and Multitasking

  • Such a system is possible by having a mixture of CPU bound processes (i.e. the processes that mostly perform numerical calculation with little I/0 operations. Their CPU utilization is high) and I/O bound processes (i.e. the processes that perform very little computations and most of the time they perform I/O operations. Their CPU utilization is very low.)
  • In such an operating system when one process start performing I/O operations, the CPU is allocated to another user process in the main memory that is ready to use the CPU. Thus CPU never remains idle and is always kept busy executing some processes.
  • Multiprogramming does not mean that CPU executes the instructions from several programs at the same time. Rather, it means that there are number of programs available to CPU and that a portion of one is executed, then a segment of another and so on.
  • Although two or more users programs reside in the main memory simultaneously, the CPU is capable of executing only one instruction at a time. Hence, at any given time, only one of the programs has control of CPU and is executing instructions. Simultaneous execution of more than one program with single CPU is impossible.

Multiprogramming Operating System, Classification of Operating System

Multiprogramming Operating System

5. Multitasking OS

  • Technically, multitasking is same as multiprogramming.
  • In a multitasking operating system, a single user can execute multiple programs at the same time.
  • We can also say, multitasking is the system’s capability to work on more than one job or process at the same time. It means that whenever a job needs to perform I/O operations, the CPU can be used for executing some other job or process that is also residing in the system and is ready to use the CPU.
  • The term multiprogramming is used for multi-user systems i.e., systems that are simultaneously used by many users such as mainframe and server class system and the term multitasking is used for single user system i.e., systems that are used by only one user at a time such as a personal computer or a notebook computer.
  • Thus multitasking is the method of processing the multiple tasks concurrently in a single user system. For example, a user is running separate program in four different windows at the same time. The program in window1 could be printing a document, the program in window 2 could be displaying an e-mail of user, a spreadsheet program in window 3 could be preparing sales report and compilation of a program is in progress in window 4. In this manner, a user may work on many tasks at the same time. Thus, progress of different tasks can be viewed on different windows in a multitasking system.

 

Multitasking Operating System

6. Multiprocessing Operating System

  • Multiprocessor Operating system the Classification of Operating System, that is the system that contains two or more processors or CPUS and has ability to simultaneously execute several programs. Hence the name “multi- processor”.
  • In such a system, multiple processors share the clock, bus, memory and peripheral devices.
  • A multiprocessor system is also known as parallel system.
  • In such a system, instructions from different and independent programs can be processed at the same instant of time by different CPUS.
  • In this system, the CPUS may simultaneously execute different instructions from the same program.

Multiprocessing Operating System

 

Difference between Multiprogramming and Multiprocessing

7. Timesharing OS

  • Timesharing refers to the allocation of computer resources in a time dependent fashion to several programs simultaneously.
  • A timesharing system is the Classification of Operating System and has many user terminals that are connected to same computer simultaneously. Using these terminal, different users can work on a system at the same time.
  • Thus, it uses multiprogramming with a special CPU scheduling algorithm to achieve this. In timesharing system, the CPU time is divided among all the users on a scheduled basis.

Difference between Real-Time Operating System and Timesharing Operating System

  • Each user program is allocated a very short period of CPU time one-by-one, beginning from the first user program and proceeding the last one, and then again beginning from the first one.
  • This short period of time during which user gets the attention of the CPU is known as a time slice, time slot or quantum. It is typically of the order of 10 to 100 milliseconds.
  • Thus, in timesharing, when the CPU is allocated to a user program, the user uses the CPU for the period of time slot.

Timesharing Operating System, Classification of Operating System

Timesharing Operating System

8. Distributed OS

  • A distributed system is a collection of processors located in geographical dispersed physical location.
  • In this system, the workload is distributed or divided between two or more computers that are linked together by a communication network. That is, the different processors communicate using communication links, such as telephone lines and buses.
  • The various processors do not share memory, clock, or peripheral devices. Instead each processor has its own local memory.
  • The processors in a distributed system vary in size and function. They may include small microprocessors, workstations microcomputers, mainframe computers and large general purpose computers. The various processors are also called as sites, nodes, hosts or machine.
  • The purpose of distributed system is to provide an efficient and convenient environment for sharing of resources.
  • Some examples of distributed operating system are Amoeba, Angle, Chorus, Mach, Alpha Kernel.

Distributed Operating System

Classification of Operating System

9. Real-time OS

  • In a real time operating system is the Classification of Operating System, (RTOS), a job is to be completed within the rigid time constraints otherwise job loses its meaning.
  • A real time system functions correctly only if it returns the correct result within its time constraints.
  • Thus, in a real-time system, the correctness of the computation not only depends upon the logical correctness of the computation but also upon the time at which the result is produced.
  • Thus, a real time system is one that must react to inputs and respond to them quickly. It cannot afford to be late with a response to an event.
  • A real time system often used as a central device in a dedicated applications like fuel- injection system, robotics, air-traffic control, medical imaging systems, systems that control scientific experiment, industrial control system and weapon systems, traffic light system, radar system and telephone switching system.
  • Thus, providing quick response times is the main objective of real-time system, However, resource utilization and user convenience are of secondary concern.

Real-time Operating System