Spooling ou simplesmente
Spool (do acrônimo
Simultaneous Peripheral Operations On-line) refere-se a um processo de transferência de dados colocando-os em uma área de trabalho temporária onde outro programa pode acessá-lo para processá-lo em um tempo futuro. A técnica de Spooling consiste em colocar
jobs em um
buffer, uma área da memória ou de um disco onde um dispositivo pode acessa-la quando estiver preparada. O Spooling é útil porque os dispositivos acessam dados em diferentes velocidades, o
buffer provê uma estação de espera onde o dado pode ficar armazenado enquanto o dispositivo mais lento fica carregando. O mais comum exemplo de spooling é o da primeira impressão.
Como a
impressora é um
periférico muito mais lento que o
computador, este teria de ficar esperando a impressão terminar para, então, executar uma nova tarefa. Para resolver esse problema, a maioria das
impressoras tem um
buffer, ou seja, uma
memória interna utilizada para armazenar temporariamente os
dados que estão vindo do
computador. Com isso, os dados são transferidos do
computador para o
buffer, liberando-o mais rapidamente. Quanto maior o
buffer da
impressora, mais cedo esta liberará o computador.