In batch processing system, the jobs of a batch were executed one after another. Though, it was an improved technique in reducing the system setup time but still there were some limitations with this technique like as under-utilization of CPU time, non-interactivity of user with the running jobs etc. Whereas, the other partition (higher end) was assigned to the user programs. The lower end of this partition was assigned to the resident portion of the OS i.e.
As memory management is concerned, the main memory was partitioned into two fixed partitions. To overcome this problem, another scheduling method named as ‘Shortest Job First’ was used.
Even though this scheduling method was easy and simple to implement but unfair for the situations where long jobs are queued ahead of the short jobs. In batch processing system, earlier the jobs were scheduled in the order of their arrival i.e. So it resulted to the under utilization of CPU time. 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. In this environment there was no interactivity and the users had no direct control. So in this approach, files of the similar batch were processed to speed up the task. The output for each job would be separated and turned over to users in a collection area. For instance, there maybe a batch of short FORTRAN jobs.
Each set of jobs was considered as a batch and the processing would be done for a batch. In addition, these jobs were classified as ‘long jobs’ that required more processing time or short jobs which required a short processing time. Then the submitted jobs were ‘grouped as FORTRAN jobs, COBOL jobs etc. The deck of cards would be handed in to an operator who would collect such jobs from various users. The header cards in the deck were the “job control” cards which would indicate that which compiler was to be used (like FORTRAN, COBOL compilers etc). In batch processing the user were supposed to prepare a program as a deck of punched cards. It resulted in improved system utilization due to reduced turn around time. First the pooled jobs are read and executed by the batch monitor, and then these jobs are grouped placing the identical jobs (jobs with the similar needs) in the same batch, So, in the batch processing system, the batched jobs were executed automatically one after another saving its time by performing the activities (like loading of compiler) only for once. Now the jobs could be stored on the disk to create the pool of jobs for its execution as a batch. This technique was possible due to the invention of hard-disk drives and card readers. performed by the ‘Batch Monitor’ resided in the low end of main memory. This is the important task of a batch processing system i.e.
The main function of a batch processing system is to automatically keep executing the jobs in a batch. In this approach similar jobs were submitted to the CPU for processing and were run together. So the problem of more set up time was reduced by processing the jobs in batches, known as batch processing system. The problem of early systems was more setup time. To avoid the problems of early systems the batch processing systems were introduced.