Spooling

Spooling

In computer science, "Spool" is an acronym for simultaneous peripheral operations on-line..

The most common spooling application is print spooling: documents formatted for printing are stored usually into an area on a disk and retrieved and printed by a printer at its own rate. Printers typically can print only a single document at a time and require seconds or minutes to do so. With spooling, multiple processes can write documents to a print queue without waiting. As soon as a process has written its document to the spool device, the process can perform other tasks, while a separate printing process operates the printer.

For example, when a city prepares payroll checks, the actual computation may take a matter of minutes or even seconds, but the printing process might take hours. If the program printed directly, computing resources (CPU, memory, peripherals) would be tied up until the program was able to finish. The same is true of personal computers. Without spooling, a word processor would be unable to continue until printing finished. Without spooling, most programs would be relegated to patterns of fast processing and long waits, an inefficient paradigm.

Spooler or print management software may allow priorities to be assigned to jobs, notify users when they have printed, distribute jobs among several printers, allow stationery to be changed or select it automatically, generate banner pages to identify and separate print jobs, etc.

The temporary storage area to which E-mail is delivered by a Mail Transfer Agent and in which it waits to be picked up by a Mail User Agent is sometimes called a mail spool. Likewise, a storage area for Usenet articles may be referred to as a news spool. (On Unix-like systems, these areas are usually located in the /var/spool directory.) Mail and news spools usually allow random access to individual messages.

In the later 1960s and early 1970s, computers handled punch cards, and spooling systems such as HASP, FIDO, PATCHES, SHADOW & SHADOW II (primarily teleprocessing, but control program same as PATCHES), Power, GRASP, and The Spooler found they could benefit batch programs by spooling card input and output. (Some centers directed punch card and printed output to tape for later processing. The term 'spooling' may derive from these reels or 'spools' of tape, although the terms normally used for tape were reel or tape volume; this etymology has not been sourced.)

Read more about Spooling:  Origin of The Term