Batch processing

related topics
{system, computer, user}
{math, number, function}

Batch processing is execution of a series of programs ("jobs") on a computer without manual intervention.

Batch jobs are set up so they can be run to completion without manual intervention, so all input data is preselected through scripts or command-line parameters. This is in contrast to "online" or interactive programs which prompt the user for such input. A program takes a set of data files as input, processes the data, and produces a set of output data files. This operating environment is termed as "batch processing" because the input data are collected into batches of files and are processed in batches by the program.

Contents

Benefits

Batch processing has these benefits:

  • It allows sharing of computer resources among many users and programs,
  • It shifts the time of job processing to when the computing resources are less busy,
  • It avoids idling the computing resources with minute-by-minute manual intervention and supervision,
  • By keeping high overall rate of utilization, it better amortizes the cost of a computer, especially an expensive one.

History

Batch processing has been associated with mainframe computers since the earliest days of electronic computing in the 1950s. There were a variety of reasons why batch processing dominated early computing. One reason is that the most urgent business problems for reasons of profitability and competitiveness were primarily accounting problems, such as billing. Billing is inherently a batch-oriented business process, and practically every business must bill, reliably and on-time. Also, every computing resource was expensive, so sequential submission of batch jobs matched the resource constraints and technology evolution at the time. Later, interactive sessions with either text-based computer terminal interfaces or graphical user interfaces became more common. However, computers initially were not even capable of having multiple programs loaded into the main memory.

Batch processing is still pervasive in mainframe computing, but practically all types of computers are now capable of at least some batch processing, even if only for "housekeeping" tasks. That includes UNIX-based computers, Microsoft Windows, Mac OS X, and even smartphones, increasingly. Virus scanning is a form of batch processing, and so are scheduled jobs that periodically delete temporary files that are no longer required. E-mail systems frequently have batch jobs that periodically archive and compress old messages. As computing in general becomes more pervasive in society and in the world, so too will batch processing.

Full article ▸

related documents
Carrier sense multiple access
Physical Layer
UAE (emulator)
Internet Relay Chat takeover
Distributed switching
Multiple-image Network Graphics
Sendmail
Multics
Myrinet
StrongARM
Codec
System request
QRP operation
5ESS switch
Backward compatibility
Java Platform, Enterprise Edition
XEmacs
Gender changer
Coda (file system)
Image and Scanner Interface Specification
Samba (software)
Wireless community network
Signal generator
Pulse-amplitude modulation
Automatic call distributor
Wireless Markup Language
TX-0
Video editing software
Talk (software)
Wireless broadband