Thursday 14 July 2022

Types of Operating Systems– Multi programming Systems, Batch Systems, Time Sharing Systems

An Operating System performs all the basic tasks like managing files, processes, and memory. Thus operating system acts as the manager of all the resources, i.e. resource manager. Thus, the operating system becomes an interface between user and machine. 

Types of Operating Systems: Some widely used operating systems are as follows

1. Batch Processing

  • The OS in the early computers was fairly simple.
  • Its major task was to transfer control automatically from one job to the next.
  • The OS was always resident in memory.
  • To speed up processing, operators batched together jobs with similar requirement/needs and ran them through the computer as a group. Thus, the programmers would leave their programs with the operator.
  • The operator would sort programs into batches with similar requirements and, as the computer became available, would run each batch.
  • The output from each job would be sent back to the appropriate programmer. 




  • Batch processing system is particularly useful for operations that require the computer or a peripheral device for an extended period of time with very little user interaction.
  • Increased performance as it was possible for job to start as soon as previous job is finished without any manual intervention.
  • Priorities can be set for different batches.


  • No interaction is possible with the user while the program is being executed.
  • In this execution environment , the CPU is often idle, because the speeds of the mechanical I/O devices are intrinsically slower than are those of electronic devices.

2. Multi Programming System

  • The most important aspect of job scheduling is the ability to multi program.
  • Multiprogramming increases CPU utilization by organizing jobs so that CPU always has one to execute.
  • The idea is as follows: The operating system keeps several jobs in memory simultaneously. This set of jobs is a subset of the jobs kept in the job pool. Since the number of jobs that can be in the job pool.
  • The operating system picks and begins to execute one of the jobs in the memory.
  • Eventually, the job may have to wait for some task, such as an I/O operation, to complete.
  • In a multiprogramming system, the OS simply switches to, and executes another job. When that job needs to wait, the CPU is switched to another job and so on. Eventually the first job finishes waiting and gets the CPU back.
  • As long as at least one job needs to execute, the CPU is never idle.
  • Multiprogramming is the first instance where the OS must make decisions for the users ( Making this decision is Job Scheduling ).
  • All the jobs that enter the system are kept in the job pool . This pool consists of all processes residing on disk awaiting allocation of main memory.
  • If several jobs are ready to run at the same time, the system must choose among them. Making this decision is job scheduling
  • Finally multiple jobs running concurrently require that their ability to affect one another be limited in all phases of the operating system, including process scheduling, disk storage and memory management.


3. Time Sharing Operating System  

A time sharing system allows many users to share the computer resources simultaneously. In other words, time sharing refers to the allocation of computer resources in time slots to several programs simultaneously. For example a mainframe computer that has many users logged on to it.

Each user uses the resources of the mainframe i.e. memory, CPU etc. The users feel that they are exclusive user of the CPU , even though this is not possible with one CPU i.e. shared among different users.

The time sharing systems were developed to provide an interactive use of the computer system. A time shared system uses CPU scheduling and multi programming to provide each user with a small portion of a time shared computer. It allows many users to share the computer resources simultaneously. As the system switches rapidly from one user to the other, a short time slot is given to each user for their executions
The time sharing system provides the direct access to a large number of users where CPU time is divided among all the users on scheduled basis. The OS allocates a set of time to each user. When this time is expired, it passes control to the next user on the system. The time allowed is extremely small and the users are given the impression that they each have their own CPU and they are the sole owner of the CPU. This short period of time during that a user gets attention of the CPU; is known as a time slice or a quantum. The concept of time sharing system is shown in figure.
The time shared systems are more complex than the multi programming systems In time shared systems multiple processes are managed simultaneously which requires an adequate management of main memory so that the processes can be swapped in or swapped out within a short time


Post a Comment

Note: only a member of this blog may post a comment.

Machine Learning



Java Tutorial




C Programming


Python Tutorial


Data Structures


computer Organization