Provided by:
manpages-de_0.8-1_all 
BEZEICHNUNG
lp - Zeilendrucker (line printer devices)
"UBERSICHT
#include <linux/lp.h>
CONFIGURATION
lp[0-2] sind zeichenorientierte Gerate fur Drucker an der parallelen
Schnittstelle; ihre Hauptnummer (Major Number) ist 6, ihre Nebennummern
(Minor Numbers) sind 0-2. Die Nebennummern korrespondieren mit den
Basisadressen 0x03bc, 0x0378 und 0x0278 der Druckerports. Normalerweise
sind ihre Zugriffsrechte 220, der Besitzer ist root und die Gruppe lp.
Die Druckerports konnen entweder im Polling- oder Interrupt-Betrieb
benutzt werden. Falls ein groBerer Datendurchsatz erwartet wird, z.B.
fur Laserdrucker, sollten Interrupts benutzt werden. Fur normale
Matrixdrucker sollte Polling ausreichen. Der Vorgabewert ist Polling.
BESCHREIBUNG
Die folgenden Aufrufe von ioctl(2) werden unterstutzt:
int ioctl(int fd, LPTIME, int arg)
Wenn der Druckerpuffer voll ist, schlaft der Treiber fur arg
Hundertstelsekunden, bevor er den Puffer erneut pruft. Fur einen
schnellen Drucker sollte dieser Wert niedrig, fur einen
langsamen Drucker dagegen hoch gewahlt werden. Die Vorgabe ist
2, also 0,02 Sekunden. Dies beeinflusst nur den abrufenden
Treiber (Polling).
int ioctl(int fd, LPCHAR, int arg)
Setzt die maximale Anzahl der Durchgange, die der abrufende
Treiber wartet, bis der Drucker bereit ist, ein Zeichen fur arg
zu empfangen. Die Zahl sollte vergroBert werden, falls das
Drucken zu langsam ist und verkleinert werden, wenn das System
zu langsam wird. Der Standardwert ist 1000. Dies beeinflusst nur
den abrufenden Treiber (Polling).
int ioctl(int fd, LPABORT, int arg)
Falls arg 0 ist, wird es der Druckertreiber bei Fehlern erneut
versuchen, ansonsten aufgeben. Der Standardwert ist 0.
int ioctl(int fd, LPABORTOPEN, int arg)
Falls arg 0 ist, wird open(2) bei auftretenden Fehlern
abgebrochen, ansonsten werden Fehler ignoriert. StandardmaBig
werden Fehler ignoriert.
int ioctl(int fd, LPCAREFUL, int arg)
Falls arg 0 ist, mussen die Signale >>out-of-paper<<,
>>offline<< und >>error<< bei allen Schreibzugriffen logisch
falsch sein, ansonsten werden sie ignoriert. Es ist Standard,
sie zu ignorieren.
int ioctl(int fd, LPWAIT, int arg)
Setzt die Anzahl von >>busy-wait<<-Iterationen, die ausgefuhrt
werden, bevor der Strobe-Impuls beginnt. (Strobe signalisiert
dem Drucker, dass die Daten am Datenport stabil anliegen und ein
neues Zeichen enthalten.) Es werden ebenfalls arg Iterationen
ausgefuhrt, bevor der Strobe-Impuls beendet wird. Die
Spezifikation gibt eine Impulslange von 0,5 Mikrosekunden vor.
Die Erfahrung hat gezeigt, dass die Verzogerung durch den Code
selbst ausreicht. Darum ist der Standardwert 0. Er wird fur den
interruptgetriebenen wie fur den abrufenden Treiber verwendet.
int ioctl(int fd, LPSETIRQ, int arg)
Dieser ioctl(2) benotigt Superuser-Rechte. Das Argument arg ist
die Nummer des neuen IRQs. Der Wert 0 schaltet Interrupts ab und
Polling ein, was auch Standard ist.
int ioctl(int fd, LPGETIRQ, int *arg)
Speichert den zurzeit genutzten IRQ in arg.
int ioctl(int fd, LPGETSTATUS, int *arg)
Speichert den Wert des Statusports in arg. Die Bits haben
folgende Bedeutung:
LP_PBUSY invertierter Busy-Eingang, aktiv hoch
LP_PACK unveranderter Acknowledge-Eingang, aktiv niedrig
LP_POUTPA unveranderter >>out-of-paper<<-Eingang, aktiv hoch
LP_PSELECD unveranderter Selected-Eingang, aktiv hoch
LP_PERRORP unveranderter Error-Eingang, aktiv niedrig
Lesen Sie auch Ihr Drucker-Handbuch fur die Bedeutung der
Signale. Beachten Sie, dass abhangig vom Drucker auch
undokumentierte Bits gesetzt werden konnen.
int ioctl(int fd, LPRESET)
Setzt den Drucker zuruck. Ohne Argument.
DATEIEN
/dev/lp*
SIEHE AUCH
chmod(1), chown(1), mknod(1), lpcntl(8), tunelp(8)
KOLOPHON
Diese Seite ist Teil der Veroffentlichung 3.27 des Projekts
Linux-man-pages. Eine Beschreibung des Projekts und Informationen, wie
Fehler gemeldet werden konnen, finden sich unter
http://www.kernel.org/doc/man-pages/.
"UBERSETZUNG
Die deutsche Ubersetzung dieser Handbuchseite wurde von Michael Haardt
<michael@cantor.informatik.rwth-aachen.de> und Martin Eberhard Schauer
<Martin.E.Schauer@gmx.de> erstellt.
Diese Ubersetzung ist Freie Dokumentation; lesen Sie die GNU General
Public License Version 3 oder neuer bezuglich der Copyright-
Bedingungen. Es wird KEINE HAFTUNG ubernommen.
Wenn Sie Fehler in der Ubersetzung dieser Handbuchseite finden,
schicken Sie bitte eine E-Mail an <debian-l10n-
german@lists.debian.org>.