Provided by: manpages-de_1.11-1_all bug

BEZEICHNUNG

       lp - Zeilendrucker (line printer devices)

ÜBERSICHT

       #include <linux/lp.h>

KONFIGURATION

       lp[0–2]  sind  zeichenorientierte  Geräte  für  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  können  entweder  im  Polling-  oder
       Interrupt-Betrieb benutzt werden. Falls ein größerer Datendurchsatz erwartet wird, z.B. für Laserdrucker,
       sollten Interrupts benutzt werden. Für typische Matrixdrucker sollte Polling ausreichen. Der  Vorgabewert
       ist Polling.

BESCHREIBUNG

       Die folgenden Aufrufe von ioctl(2) werden unterstützt:

       int ioctl(int fd, LPTIME, int arg)
              Wenn  der  Druckerpuffer  voll  ist, schläft der Treiber für arg Hundertstelsekunden, bevor er den
              Puffer erneut prüft. Für einen schnellen Drucker sollte dieser Wert niedrig, für  einen  langsamen
              Drucker  dagegen  hoch gewählt 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 Durchgänge, die der abrufende Treiber wartet, bis der Drucker bereit
              ist, ein Zeichen für arg zu empfangen. Die Zahl sollte vergrößert 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. Standardmäßig werden Fehler ignoriert.

       int ioctl(int fd, LPCAREFUL, int arg)
              Falls  arg  0  ist,  müssen  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  ausgeführt  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 ausgeführt, bevor der  Strobe-Impuls
              beendet wird. Die Spezifikation gibt eine Impulslänge von 0,5 Mikrosekunden vor. Die Erfahrung hat
              gezeigt,  dass  die  Verzögerung durch den Code selbst ausreicht. Darum ist der Standardwert 0. Er
              wird für den interruptgetriebenen wie für den abrufenden Treiber verwendet.

       int ioctl(int fd, LPSETIRQ, int arg)
              Dieser ioctl(2) benötigt 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      unveränderter Acknowledge-Eingang, aktiv niedrig
              LP_POUTPA    unveränderter »out-of-paper«-Eingang, aktiv hoch
              LP_PSELECD   unveränderter Selected-Eingang, aktiv hoch
              LP_PERRORP   unveränderter Error-Eingang, aktiv niedrig

              Lesen Sie auch Ihr Drucker-Handbuch für die Bedeutung der Signale. Beachten Sie, dass abhängig vom
              Drucker auch undokumentierte Bits gesetzt werden können.

       int ioctl(int fd, LPRESET)
              Setzt den Drucker zurück. Ohne Argument.

DATEIEN

       /dev/lp*

SIEHE AUCH

       chmod(1), chown(1), mknod(1), lpcntl(8), tunelp(8)

KOLOPHON

       Diese  Seite  ist  Teil  der  Veröffentlichung  4.04  des Projekts Linux-man-pages. Eine Beschreibung des
       Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden
       sich unter http://www.kernel.org/doc/man-pages/.

ÜBERSETZUNG

       Die deutsche Übersetzung dieser Handbuchseite wurde von  Michael  Haardt  <michael@moria.de>  und  Martin
       Eberhard Schauer <Martin.E.Schauer@gmx.de> erstellt.

       Diese  Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 oder neuer
       bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

       Wenn Sie Fehler in der Übersetzung dieser  Handbuchseite  finden,  schicken  Sie  bitte  eine  E-Mail  an
       <debian-l10n-german@lists.debian.org>.

Linux                                            15. Januar 1995                                           LP(4)