Spooling

Z Wikipedie, otevřené encyklopedie
Skočit na: Navigace, Hledání

Spooling (anglicky Simultaneous Peripheral Operation On Line) je v informatice technika sdílení vstupně-výstupních zařízení v multitaskingovém (víceúlohovém) operačním systému. V daném okamžiku může vstupně-výstupní zařízení provádět jen jednu úlohu, a proto jsou při současném přístupu více aplikací k zařízení jejich požadavky řazeny do fronty. Pro realizaci fronty požadavků (úloh) je většinou využit souborový systém na pevném disku či v ramdisku.

Tisková fronta[editovat | editovat zdroj]

Nejběžnější aplikací využívající spooling (tj. zařazování do fronty), je tisk na počítačovou tiskárnu. Ve víceúlohovém prostředí je nevhodné, aby procesy přistupovaly k tiskárně (resp. k portu) přímo, protože by mohlo dojít k souběhu nebo uváznutí. Proto tiskárnu obsluhuje speciální démon, který k nim jako jediný přímo přistupuje (tj. posílá jim data k vytištění). Běžící úlohy (např. Microsoft Word) mu předávají data určená k tisku, která démon typicky nejprve odkládá do tiskové fronty. Tisková fronta je typicky adresář, který je pro tiskárnu vyhrazen. Tiskové úlohy jsou proto do fronty umisťovány v podobě souborů.

Výhodou tiskové fronty může být i to, že data jsou do fronty zapsána relativně rychle, zatímco vlastní tisk může trvat velmi dlouho. Díky existenci fronty však nebude program, který tisk vytváří, muset čekat na dokončení tisku. Démon řídící tisk může pracovat s prioritami (některé úlohy mohou být tisknuty přednostně), může zajistit účtování (platby) za tisk, rozdělovat úlohy mezi více tiskáren, tisknout na začátku identifikační stránku atd. V osobních počítačích se obvykle nastavuje, že tisk je zahájen okamžitě po začátku zápisu dat do fronty (nečeká se na dokončení zápisu celé tiskové úlohy do fronty). Naopak u tiskáren, které jsou sdíleny více lidmi, je výhodnější zahájit tisk až teprve v okamžiku, kdy jsou všechna data připravena (je-li tiskárna rychlá, není nutné čekat na program, který tiskovou úlohu vytváří).