Um spool de impressão é efetivamente um buffer, gerenciado por trabalho, com um programa (o spooler) responsável por receber trabalhos de envio de programas e alimentá-los com uma ou mais impressoras. O objetivo de um spool é lidar com a comunicação entre dois sistemas com velocidades diferentes e controlar o acesso a dispositivos compartilhados. O primeiro significa que os programas podem enviar trabalhos de impressão o mais rápido possível, e esses trabalhos são tratados tão rápido (ou lentamente) quanto as impressoras. O último (como apontado por RonJohn ) garante que os trabalhos sejam tratados de forma coerente: portanto, durante a impressão, os trabalhos não são misturados.
As impressoras em rede fornecem seus próprios spools e os servidores de impressão (CUPS lpd
etc.) também implementam spools. A maioria dos sistemas de impressão também lida com controle de acesso, cotas, banners, opções de impressão etc. Os spools são usados em outros contextos; por exemplo, os servidores de backup baseados em fita agora armazenam dados de backup de hosts em rede em um sistema de armazenamento rápido baseado em disco, para que possam alimentar unidades de fita modernas nas tremendas velocidades necessárias para evitar o desgaste de fita.
No contexto do comentário, a relevância de um spool é que ele correlacione o envio do trabalho de impressão a partir de seu preenchimento. Não colocar em spool significaria que o envio seria concluído apenas com o trabalho de impressão e, portanto, seu lpr
comando seria concluído apenas quando o trabalho fosse concluído. A remoção do carretel no seu computador pode não ter o resultado desejado, já que a própria impressora também pode carretel!
/var/spool/mail
um local semelhante. Este também é um "buffer" para permitir o envio quase assíncrono de mensagens de email. A mensagem de correio está em spool / na fila e o cliente de email não precisa aguardar que o email realmente saia do sistema. Muito parecido com um trabalho de impressão.write
concluídas assim que os dados são gravados em qualquer buffer usado (no Linux, o cache da página), não quando os dados estão realmente no seu destino.read
também não é necessariamente não-bloqueante e pode retornar menos dados do que o solicitado.lpr
esperasse a impressora terminar de aceitar o trabalho, ainda haveria um atraso antes de ser totalmente processado.Em poucas palavras, um spooler consiste em:
No seu caso, o programa em primeiro plano (
lpr
) envia seus trabalhos de impressão paracups
, que o armazena e usa a comunicação serial, paralela, USB, rede, ... para realmente iniciar o processo de impressão.É por isso que hoje em dia, mesmo quando a impressora fica sem papel, você ainda pode continuar usando o computador, enquanto, quando eu era criança no CP / M, todo o computador travava até você adicionar mais papel ...
Por que é chamado de "spool"?
Como naqueles tempos, os computadores grandes usavam fita para armazenar esses tipos de arquivos, pois os discos eram muito caros; portanto, quando você trabalhava no data center, a primeira coisa que ouvia eram as fitas começando a girar¹ e somente depois de um segundo ou 3-4 a impressora iniciaria a impressão (se você tiver sorte). ;-)
Nota 1: "Carretel" é um substantivo que significa "um dispositivo cilíndrico no qual a fita magnética pode ser enrolada"; portanto, "spooling" é o dispositivo cilíndrico que gira e enrola a fita ...
fonte
Primeiro, vamos começar com o significado do termo "spool": às vezes o tamanho de um documento é maior que a memória da impressora, portanto, "spooling de impressora" permite o envio de vários documentos para uma impressora e a colocação de todos esses documentos em uma fila.
Agora, no Unix, existem dois sistemas de impressão:
lpd
daemon para agendar os trabalhos de impressão.lpsched
como agendador.O USAIL de Jeff Lessem : o aprendizado independente da administração do sistema Unix possui uma seção sobre Impressão no Unix, que fornece uma boa visão geral dos sistemas BSD e SVR4:
O sistema de spool do BSD
O sistema de spool SVR4 é usado pelo Solaris e HP-UX. Oferece mais controle e flexibilidade, mas não foi projetado para impressão em rede e é mais complicado de configurar.
Consulte também: Impressoras e spooler de impressora - comandos lp, lpstat e cancel | Dicas e truques para o blog de TI
fonte
Nunca se esqueça que SPOOL é um acrónimo para S imultaneous P eripheral O PERAÇÕES O n L ine. Desde os primeiros dias (mas não os primeiros) da computação, os processadores geravam resultados mais rapidamente do que as impressoras podiam imprimi-los. Sem colocar em spool, o processador não pôde concluir um "trabalho de impressão" até que a própria impressão estivesse concluída. Isso geralmente resultava em um processador ocioso, aguardando a impressora.
Um grande avanço no spool ocorreu durante o programa espacial americano. Os computadores estavam produzindo resultados muito lentamente, então um novo sistema de spool foi escrito apenas para a NASA (embora ele e seus sucessores tenham ganhado popularidade até que todos os sistemas IBM os tenham). Ele foi chamado o H ouston Um utomatic S agrupamento de P rogram, tornando ferrolho do primeiro acrónimo aninhada.
Uma boa analogia ao spool é uma fábrica de threads - o thread é girado rapidamente e armazenado - onde mais - em um spool. Em seguida, o carretel de linha é colocado em uma máquina de costura ou outra máquina, que é executada a uma taxa muito mais lenta, onde é usada para criar um produto acabado.
fonte
Spool é um termo bastante antigo da escola. Atualmente, você vê "Fila de impressão" usado com mais frequência.
To Queue é um ditado britânico para "esperar na fila". Portanto, os trabalhos de impressão são "enfileirados", ou seja, aguardando na fila para impressão.
Depois que um trabalho termina o spool (pode haver longos períodos de "reflexão" entre as linhas de impressão), ele é impresso, geralmente em uma base FIFO, mas a prioridade do trabalho de impressão pode substituí-lo.
Os carretéis e filas de impressão podem ser pausados para que os Operadores troquem de papel. Também pode ser reiniciado se algumas páginas estiverem danificadas.
fonte