Drucker Spooling, Schnittstellen, Treiber und Sprachen

Spooling

Es gibt in modernen Betriebssystemen wie Windows, macOS oder Linux zwei Drucksysteme, von denen eins mal mehr oder weniger gut funktioniert. Bei analogen Druckern werden die Daten direkt an den Drucker geschickt.

CUPS

CUPS wird von Apple entwickelt und gepflegt und findet in unixoiden Betriebssystemen wie macOS, BSD oder Linux Einsatz. Es ist ein sehr stabiles, auf PostScript aufbauendes Drucksystem. Mit CUPS können aber auch Drucker angesprochen werden, die kein PostScript sprechen bspw. Nadeldrucker o.ä.

Windows Spooler (Druckdienst)

Dies ist Microsoft’s eigene Implementation vom Drucker-Spooler. Dieser unterstützt wie CUPS auch eine Reihe an Druckersprachen, aber auch mehr Drucker. Microsoft ist mit derem eigenen Windows-spezifischen Druckdienst Alleingänger. Deren Druckerdienst hat aber auch massive Probleme mit Sicherheit und Stabilität, Stichwort PrintNightmare und feststeckende Spooler-Warteschlangen.

Druckertreiber

Druckertreiber sorgen dafür, dass das Betriebssystem weiß, wie man mit dem Drucker umgehen soll. Dank PostScript ist es relativ einfach für einen Hersteller beispielsweise unter CUPS mittels PPD-Dateien seine Treiber zur Verfügung zu stellen. Unter Windows bestehen Druckertreiber wie richtige Treiber aus .ini-, .dll- und .sys-Dateien, also eine Manifest-Datei, die alle Druckerinformationen beinhaltet (INI), die DLL-Dateien, die Programme und das Betriebssystem benötigen, um mit dem Drucker zu sprechen und manchmal ein paar .sys-Dateien, die den eigentlichen Treiber enthalten.

Druckersprachen

Die Programmiersprache für Drucker wird häufig auch Druckersprache genannt. Man unterscheidet hier zwischen Sprachen, die den Aufbau einer Seite beschreiben oder Sprachen, die die rohen Druckdaten enthalten, mit denen der Drucker umgehen soll.

Zu den verbreitesten Sprachen zählen

Am weitestetn verbreitet sind aber PostScript und das darauf basierende PDF-Format. PostScript ist sehr gut standarisiert und wird von einer breiten Palette an Druckern unterstützt.

Schnittstellen

Ältere Drucker kommunizieren über die LPT-Schnittstelle oder den seriellen Anschluss. Moderne Drucker können per USB angeschlossen werden und manche unterstützen sogar das Drucken über LAN, WLAN oder Google Cloud Print. Letzteres ist die einzige Schnittstelle, welche auf Chromebooks unterstützt wird.

Der LPT1-Bug

Da in MS-DOS früher der Pfad LTP0, LPT1 usw. für LPT-Drucker reserviert war kann man in Windows Dateien oder Ordner nicht mehr danach benennen.

Referenzen