Batch Processing Operating System

Learn via video courses
Topics Covered

Overview

In early systems, there was a problem of more setup time required before execution. To solve this problem batch processing operating systems were introduced. Batch processing is a type of operating system that processes similar types of jobs into a batch. In the batch processing operating system, multiple jobs of similar types are converted into a batch and sent to the CPU for execution.

What is a Batch Processing Operating System?

Before the 1970s people used to have a single computer known as the mainframe. It was not possible to directly feed the program to the computer. People used to give jobs to computer operator in the form of punch cards. The computer operator used to make batches of all these punch cards of similar requirements to save the setup time.

The main task of the batch operating system is to make batches of similar types of jobs and send these batches to the CPU for execution.

batch-process-operating-system-inner

All the jobs in a single batch perform similar functions. These job groups i.e. batches get executed simultaneously.

Types of Batch Processing Operating Systems

There are 2 types of batch processing operating systems as follows -

  1. Simple batched system
  2. Multi-programmed batched system

1. Simple Batched System

In the simple batched system there is no direct interaction between the user and the computer. The user creates the job on the punch cards and submits it to the computer operator. Then the operator makes batches and the computer starts to execute them sequentially.

simple-batched-system

The monitor is the special program that manages the sequential execution of jobs in a batch. The monitor is always present in the main memory and available for execution. We don't have any mechanism to prioritize the process in the simple batched system.

2. Multi-programmed Batched System

In the multi-programmed batched system all the programs are present on the disk memory. The multi-programmed batched system picks one program from the memory and starts to execute it. At any point in time, if the executing program needs to do the I/O operation then the operating system switches to another job. This way the CPU and OS always remain busy. Which helps to maximize the CPU usage.

multi-programmed-batched-system

Because multiple jobs are ready to execute, at the same time multi-programmed batched system uses CPU scheduling to choose the process to execute from multiple jobs so that the CPU is idle and continuously processing.

Why are Batch Processing Operating Systems used?

Batch processing operating systems are useful when you need minimal user interaction with the computer to perform repetitive tasks. The batch-processing operating system also loads less stress on the CPU.

The old batch-processing operating systems had less interaction with the program, but now modern batch-processing operating systems provide the interaction with which we can schedule the time for jobs. Due to this computer acknowledges the processor when the specified time has arrived, that time is up.

How does the Batch Processing Operating System work?

The batch processing operating system keeps the number of jobs in the memory and they get executed on a first come, first serve basis. All the jobs in the memory are grouped into batches after finding the similarities. When the task is done, system memory gets freed and the resulting output goes to the output spool for later processing and printing. Because user interaction is limited in the batch processing operating system, the user gets free to do other work once he gives the tasks to the system.

Characteristics of Batch Processing Operating System

There are various characteristics of batch processing operating systems listed as follows -

  1. User does not interfere with the system directly instead he writes the instructions and gives them to the computer operator.
  2. The computer operator evaluates the user instructions and makes a set of similar types of instructions.
  3. Job is a single unit that consists of stepwise instructions of program and data to process.
  4. All these jobs get stored in the memory and they don't need any manual information to execute.
  5. These jobs in a single batch have distinct instructions and several similarities.
  6. All the processes or jobs get executed by the CPU in a first come, first serve manner.
  7. After successful completion of the job, the operating system releases the memory.

Advantages of Batch Processing Operating System

  1. It is very difficult to know how much time will it take to completely execute the job, only the batch processing operating system processors know how long it will take to completely execute the job.
  2. A new job gets loaded automatically as soon as the current job gets executed completely, this increases the performance of the system and helps to reduce the setup time.
  3. Multiple users can share the single batch processing operating system.
  4. There is very little idle time for the CPU in a multi-programmed batch operating system because it is continuously working on some task.
  5. It is easy to manage large work with the help of batch systems.
  6. We require less context switching from one environment to another environment after every process, because the entire batch is getting executed in a similar environment.

Drawbacks of Batch Processing Operating System

  1. In the case of a single batch processing operating system, the CPU remains idle when the process demands a certain I/O operation.
  2. If there is a mismatch in the speed of the I/O device and the CPU, at that time CPU, can't take any other task for execution in between.
  3. User is unable to set the high priority for important jobs, all the jobs get executed sequentially.
  4. User needs to wait for results until all the processes get executed.
  5. Sometimes the execution of jobs leads to starvation as some jobs might take a long time for execution and other jobs have to wait to get the resources.

Examples of Batch Processing Operating Systems

The batch-processing operating system is useful to perform repetitive tasks. Following are some of the examples where it can be utilized.

  1. Payroll System The batch-processing operating system can be useful to calculate the salaries of multiple employees at the end of the month. We can provide a batch of multiple jobs where each job contains the work of one employee.

  2. Transactions process Multiple transactions happen in the banking sector. It makes sense to use the batch processing operating system in the transaction process, mostly to implement the money transfer system.

  3. Daily Report In the manufacturing industry, the batch processing operating system is used to keep track of daily operational statements of the production line. We can generate daily reports and maintain the record with the help of a batch-processing operating system.

  4. Billing segment The batch processing operating system is used to calculate the rates and make the report of millions of call logs by all the telecom companies.

Conclusion

  • Batch processing operating system is developed to overcome the drawback of high setup and load time of the process.
  • Job is a single unit of the program which contains the sequential set of instructions for the computer.
  • In the batch processing operating system all the jobs are grouped in various batches based on similarities.
  • There are two types of batch-processing operating systems
    1. Simple Batched System
    2. Multi-programmed Batched System
  • There are multiple characteristics, advantages, and drawbacks of batch-processing operating systems.
  • We can use batch processing operating systems for multiple operations like payroll systems, transaction systems, daily report generation, billing systems, etc.