The spooler controls all output that is sent to a printer. Spooler is an acronym derived from simultaneous peripheral output online.
Any system that allows multiple users to generate printed output and direct it to one or more logical or physical printers must have a spooler. The spooler controls the creation of each print job and sees that it is either sent to a printer or held in a storage area. It also controls the relationship between physical hardware and logical printers.
Depending on the printer assignments and the status of the printer, the output may be printed immediately, sent to tape, placed in a queue for later printing, or placed in a hold file.
There are three major divisions of interest in the spooler:
form queues
logical printers
physical printers
Each user is assigned to a form queue, either by direction or by default. When the user creates a report, it becomes an element in a table of currently active reports for the assigned form queue. There are status flags that indicate if the report is to be printed, suppressed, held, sent to tape, or left open at the end of the job.
The relationship between the physical printers (hardware) and the form queues is established when a logical printer is started. At that time, the user designates the name (number) of a logical printer, the physical hardware device it will run on, and the form queues that it will service.
The spooler directs the items in the queue that are scheduled to one or more printers as they becomes available. The spooler can be directed to output report items to printers, tape, or to a specified file in output processor format.