spool
spool1 / spoōl/ • n. a cylindrical device on which film, magnetic tape, thread, or other flexible materials can be wound; a reel: spools of electrical cable. ∎ a cylindrical device attached to a fishing rod and used for winding and unwinding the line as required. ∎ [as adj.] denoting furniture of a style popular in England in the 17th century and North America in the 19th century, typically ornamented with a series of small knobs resembling spools: a narrow spool bed.• v. 1. [tr.] wind (magnetic tape or thread) on to a spool: he was trying to spool his tapes back into the cassettes with a pencil eraser. ∎ [intr.] be wound on or off a spool: the plastic reel allows the line to run free as it spools out.2. [intr.] (of an engine) increase its speed of rotation, typically to that required for operation: a jet engine can take up to six seconds to spool up.spool2 • v. [tr.] Comput. send (data that is intended for printing or processing on a peripheral device) to an intermediate store: users can set which folder they wish to spool files to.
spool
1. The reel or former on which magnetic tape or printer ribbon is wound.
2. To transfer data intended for a peripheral device (which may be a communication channel) into an intermediate store, either so that it can be transferred to the peripheral at a more convenient time or so that sections of data generated separately can be transferred to the peripheral in bulk. Spooling is therefore a method of handling virtual input and output devices in a multiprogramming system.
For simplicity consider the case of output. Normally a program wishing to output to a page printer will claim a printer, use it to produce its results, and then release the printer. In a multiprogramming environment this is a potent source of delay since the speed at which a printer operates is typically slow compared with the speed of the process driving the printer; it would therefore be necessary to provide a number of printers approximately equal to the number of processes active in the system.
Spooling is commonly used to overcome this problem. Output destined for a printer is diverted onto backing store. A process wishing to use a printer will be allocated an area of backing store, into which the results destined for the printer are written, and a server process, which acts as a virtual printer and transfers information destined for the printer into the backing store area. When the process has no more data to send to the printer, it will inform the server process, which will terminate the information written into backing store. Subsequently a system utility will be used to copy the contents of the backing store for this process onto the printer. Similar arrangements can be established for dealing with the input to processes.
spool
.