In computer processes, spooling is the practice of holding data in temporary storage for execution by another device or program. In modern systems, spooling is often used when data needs to be transferred from a program to a peripheral (such as a printer). The data transfer is managed by a dedicated program known as the spooler.
The term “spooling” is derived from the word “spool,” which refers to the temporary storage area in the computer’s memory. “Spool” is widely believed to be an acronym for “simultaneous peripheral operations on-line,” although it may also be a reference to cylinders that hold wound-up magnetic tape, film, or thread.
Real spooling examples
- Printers: Devices (such as your laptop) send documents that need to be printed to the spool, where they’re added to the printing queue. This arrangement lets other programs and apps use the device’s CPU while the printer works — without spooling, the entire system would be forced to wait until the printer was done.
- Computer mouse: Devices that computer mice are attached to use spoolers to process the peripheral’s commands. Commands are sent to the spooler even if the peripheral becomes unresponsive for a moment — they will be executed instantly once it resumes operation.