💾 Archived View for koyu.space › koyu › notes › drucker.gmi captured on 2024-05-10 at 10:50:29. Gemini links have been rewritten to link to archived content

View Raw

More Information

⬅️ Previous capture (2022-06-11)

-=-=-=-=-=-=-

Drucker Spooling, Schnittstellen, Treiber und Sprachen

Spooling

IBM PC with printer _right

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

https://de.wikipedia.org/wiki/Drucker_(Ger%C3%A4t)#Schnittstelle_mit_dem_Computer

https://www.heise.de/thema/PrintNightmare

https://webdots.cc/windows-druckerwarteschlange-manuell-leeren-loeschen/

https://www.cups.org/doc/postscript-driver.html

https://support.google.com/chromebook/answer/7225252?hl=de

https://docs.microsoft.com/en-us/windows-hardware/drivers/print/printer-inf-file-entries

gemini://chris.vittal.dev/rfcs/txt/rfc2346.txt

https://www.howtogeek.com/fyi/windows-10-still-wont-let-you-use-these-file-names-reserved-in-1974/