Batch processing is a technique in which an Operating System collects the programs and data together in a batch before processing starts. Batch processing systems were introduced to avoid the problems of early systems i.e. more setup time. In this approach similar jobs were submitted to the CPU for processing and were run together.
The main function of a batch processing system is to automatically keep executing the jobs in a batch. This is the important task of a batch processing system i.e. performed by the 'Batch Monitor' resided in the low end of main memory.
Working of Batch OS
This technique was possible due to the invention of hard-disk drives and card readers so the jobs could be stored on the disk to create the pool of jobs for its execution as a batch. First the pooled jobs are read and executed by the batch monitor & then these jobs are grouped by placing the identical jobs in the same batch. So in this system, the batched jobs were executed automatically one after another saving its time by performing the activities (like loading of compiler) only once and hence it resulted in improved system utilization due to reduced turn around time.
In batch processing the user was supposed to prepare a program as a deck of punched cards. The header card in the deck was the "job control" cards which would indicate that which compiler was to be used. The deck of cards would be handed in to an operator who would collect such jobs from various users. Then the submitted jobs were 'grouped as FORTRAN jobs, COBOL jobs etc. In addition, these jobs were classified as 'long jobs' that required more processing time or short jobs which required a short processing time. Each set of jobs was considered as a batch and the processing would be done for a batch. In this system, only one job could engage the processor at a time and if there was any input/ output operation the processor had to sit idle till the completion of I/O job. So it resulted to the underutilization of CPU time.
Pros & Cons of Batch OS
Pros:-
- Suppose a job takes a very long time(1 day or so). Then, such processes can be performed even in the absence of humans.
- They doesn't require any special hardware and system support to input data.
Cons:-
- It is very difficult to debug batch systems.
- Lack of interaction between user and operating system.
- Suppose an error occurs in one of the jobs of a batch. Then, all the remaining jobs get affected i.e. they have to wait until the error is resolved.



Comments
Post a Comment