Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Eingabemodi

&pagelevel(5)&pagelevel

Die Komponente c_iflag beschreibt die grundlegende Eingabesteuerung des Terminals:

Maskenname

Beschreibung

BRKINT

Signal SIGINT bei break senden

ICRNL

CR bei Eingabe in NL umwandeln

IGNBRK

break ignorieren

IGNCR

CR ignorieren

IGNPAR

Zeichen mit Paritätsfehler ignorieren

INLCR

NL bei Eingabe in CR umwandeln

INPCK

Paritätsprüfung für Eingabe aktivieren

ISTRIP

8. Bit des Eingabezeichens löschen

IXOFF

START/STOP-Eingabesteuerung aktivieren

IXON

START/STOP-Ausgabesteuerung aktivieren

PARMRK

Paritätsfehler markieren

IUCLC
Wird zukünftig vom X/Open-
Standard nicht mehr unterstützt.

Bei Eingabe Groß- in Kleinbuchstaben umwandeln.

IXANY

Fortsetzung der Ausgabe durch beliebiges Eingabezeichen

Im Zusammenhang mit der asynchronen Datenübertragung über eine serielle Schnittstelle ist ein break als eine Folge von 0-Bits definiert, deren Übertragung länger dauert, als für die Übertragung eines Bytes notwendig ist. Die gesamte Folge von 0-Bits wird als ein einziges break interpretiert, auch wenn es sich dabei um eine Folge handelt, die mehrere Bytes lang ist. In anderen Zusammenhängen als der asynchronen seriellen Datenübertragung ist die Bedeutung eines break nicht festgelegt.

Bei gesetztem IGNBRK wird ein in der Eingabe auftretendes break ignoriert, d.h. nicht in den Eingabepuffer eingetragen und deshalb von keinem Prozess gelesen. Bei gesetztem BRKINT dagegen erzeugt ein break ein einzelnes Unterbrechungssignal SIGINT und sowohl die Ein- als auch die Ausgabepuffer werden gelöscht. Wenn weder IGNBRK noch BR-KINT gesetzt ist, dann wird ein break als einzelnes Zeichen \0 gelesen, wenn PARMRK gesetzt ist, dann als \377, \0, \0.

Ist IGNPAR gesetzt, dann wird jedes Byte mit einem Zeichen- oder Paritätsfehler ungleich einem break ignoriert.

Wenn PARMRK gesetzt und IGNPAR nicht gesetzt ist, dann wird jedes Byte mit einem Rahmen- oder Paritätsfehler, welches ungleich einem break ist, als eine Folge von drei Zeichen weitergegeben: \377, \0 und X, wobei \377 und \0 ein 2 Byte langes Kennzeichen für jede dieser Sequenzen ist und X dem fehlerhaften Zeichen entspricht. Um Zweifelsfälle auszuschließen wird, wenn ISTRIP nicht gesetzt ist, ein gültiges Zeichen \377 als \377, \377 an die Anwendung ausgeliefert. Wenn weder PARMRK noch IGNPAR gesetzt ist, dann wird ein Rahmen- oder Paritätsfehler, der ungleich einem break ist, als ein einzelnes Zeichen \0 an die Anwendung weitergegeben.

Bei gesetztem INPCK wird die Paritätsprüfung bei der Eingabe aktiviert. Bei nicht gesetztem INPCK wird die eingabeseitige Paritätsprüfung deaktiviert. Damit kann das Paritätsbit bei der Ausgabe ohne Berücksichtigung von eventuellen Paritätsfehlern bei der Eingabe erzeugt werden.

Hinweis

Ob die Paritätsprüfung bei der Eingabe aktiviert oder deaktiviert ist, hängt nicht davon ab, ob die Paritäts-Erkennung aktiviert oder deaktiviert ist (siehe auch Abschnitt "Steuermodi“). Wenn die Paritätserkennung aktiviert, die Paritätsprüfung bei der Eingabe jedoch deaktiviert ist, dann erkennt zwar die Hardware, mit der das Terminal verbunden ist, das Paritätsbit, aber die Terminal-Gerätedatei überprüft nicht, ob dieses Bit korrekt gesetzt ist.

Bei gesetztem INLCR wird ein empfangenes NL-Zeichen (Zeilenvorschub) in ein CR-Zeichen (Wagenrücklauf) umgewandelt. Bei gesetztem IGNCR wird ein empfangenes CR-Zeichen ignoriert (nicht gelesen). Ist dagegen IGNCR nicht gesetzt und ICRNL gesetzt, so wird ein empfangenes CR-Zeichen in ein NL-Zeichen umgewandelt.

Bei gesetztem IUCLC wird ein empfangener Großbuchstabe in den entsprechenden Kleinbuchstaben umgewandelt. (Wird zukünftig vom X/Open-Standard nicht mehr unterstützt.)

Bei gesetztem IXON wird die Ausgabesteuerung mit START/STOP aktiviert. Bei Empfang eines STOP-Zeichens wird die Ausgabe angehalten und bei Empfang eines START-Zeichens fortgesetzt. Die Steuerzeichen für START und STOP werden bei einer Leseoperation nicht gelesen, führen jedoch die Funktionen der Flusssteuerung aus, wenn IXON gesetzt ist. Ist IXON nicht gesetzt, dann werden START- und STOP-Zeichen gelesen. Bei gesetztem IXANY wird die angehaltene Ausgabe durch die Eingabe eines beliebigen Zeichens fortgesetzt.

Bei gesetztem IXOFF ist die Eingabe-Flusssteuerung aktiviert. Das System überträgt STOP-Zeichen, um das Terminal zu veranlassen, keine weiteren Daten mehr zu übertragen, wenn dies notwendig ist, um ein Überlaufen des Eingabepuffers zu verhindern (nicht mehr als {MAX_INPUT} Byte sind erlaubt). Es überträgt START-Zeichen, um das Terminal zu veranlassen, die Übertragung von Daten wieder aufzunehmen, sobald dies wieder ohne Gefahr eines Überlaufs des Eingabepuffers möglich ist.

Der Anfangswert für die Eingabemodi nach open() ist, dass kein Bit gesetzt ist.