A handy way of optimizing a computer's performance and saving time is batch processing. Unlike interactive processing that prompts the human user for a command, batch processing stores up several tasks and executes them while the computer is idle. This frees up memory for more exhaustive programs and speeds up productivity.
Batch processing can go unmonitored and only stops when it encounters an error or completes all tasks in the script. It allows the user to redistribute his or her computer’s resources amongst the programs he or she desires, and it takes full advantage of the processor’s capabilities. The drawbacks are that undesired commands may be executed without the user’s knowledge.
The name stems from the time users would manually enter programs on punch cards and the system operator would feed them in batches to the computer. Computer prices were very high in the 1950s, so this method was one of the main ways of optimizing time and money, making computers economical. In those days, however, not many systems had the capability of loading multiple programs.
Since the development of personal computers, frequently performed tasks have been stored in "batch files" or "scripts" scheduled to be performed at a later time. Command interpreters read these files, but sometimes the process is executed by graphical user interface (GUI) applications that define mouse actions. The recorded sequence of GUI actions are given the name "macro" and exist only in memory.
Today the process is used in several different ways. A batch processing system is one of the prime tools for the image-editing program Adobe® Photoshop®. Instead of manually playing around with each image, this tool can rotate, resize, and rename as many as the user requires at once. The automatic changes that can be made extend to correcting the color, tweaking the filters, and transformations. This system has contributed to eliminating redundant tasks such as repeating the same step over and over again.
File batch processing can convert several computer files to different formats all at once. This saves time by eliminating the need for the user to convert each file individually. Updates to a database and transaction processing can also save time by being processed in the same script.
One example of batch processing are monthly bills. Credit card companies do not provide customers a paper bill for every transaction they make, but store the data to be sent out in batches at the end of the month. Electric bills, rent, and hourly salaries all work on the same principle.