Software:Batch processing
In computing, batch processing is the running of a software job in an automated and unattended way. A user schedules a job to run and then waits for a processing system to run it. Typically, a job is scheduled to run at a configured time of day or when an event occurs or when computer resources are available.
History
The term "batch processing" originates in the traditional classification of methods of production as job production (one-off production), batch production (production of a "batch" of multiple items at once, one stage at a time), and flow production (mass production, all stages in process at once).
Early history
Early computers were capable of running only one program at a time. Each user had sole control of the machine for a scheduled period of time. They would arrive at the computer with program and data, often on punched paper cards and magnetic or paper tape, and would load their program, run and debug it, and carry off their output when done.
As computers became faster the setup and takedown time became a larger percentage of available computer time. Programs called monitors, the forerunners of operating systems, were developed which could process a series, or "batch", of programs, often from magnetic tape prepared offline. The monitor would be loaded into the computer and run the first job of the batch. At the end of the job it would regain control and load and run the next until the batch was complete. Often the output of the batch would be written to magnetic tape and printed or punched offline. Examples of monitors were IBM's Fortran Monitor System, SOS (Share Operating System), and finally IBSYS for IBM's 709x systems in 1960.[1]