pts(4) Device Drivers Manual pts(4)

ptmx, pts - Master- und Slave-Pseudoterminal

Die Datei /dev/ptmx (das Pseudoterminal-Multiplexer-Gerät) ist eine zeichenorientierte Datei mit der Major-Nummer 5 und der Minor-Nummer 2; der Zugriffsmodus ist in der Regel 0666, Besitzer ist root:root. Mit ihr wird ein Master-Slave-Paar von Pseudoterminals erzeugt.

Wenn ein Prozess /dev/ptmx öffnet, bekommt er einen Dateideskriptor für ein Pseudoterminal-Master-Gerät. Außerdem wird ein Pseudoterminal-Slave-Gerät im Verzeichnis /dev/pts erzeugt. Jeder durch das Öffnen von /dev/ptmx erzeugte Dateideskriptor ist ein unabhängiger »pseudoterminal master« mit seinem eigenen zugehörigen Slave, dessen Pfad durch einen Aufruf von ptsname(3) mit dem Dateideskriptor als Argument bestimmt werden kann.

Vor dem Öffnen des Pseudoterminal-Slaves müssen Sie den Dateideskriptor des Masters an grantpt(3) und unlockpt(3) übergeben.

Nachdem sowohl der Pseudoterminal-Master und -Slave geöffnet wurden, stellt der Slave Prozessen eine Schnittstelle bereit, die mit der eines realen Terminals identisch ist.

In den Slave geschriebene Daten werden dem Master-Dateideskriptor als Eingabe präsentiert; in den Master geschriebene Daten dienen dem Slave als Eingabe.

In der Praxis werden Pseudoterminals für die Implementierung von Terminalemulatoren wie xterm(1) und Programmen für Anmeldung aus der Ferne wie sshd(8) verwendet. Im Fall von Emulatoren werden vom PTM gelesene Daten durch die Anwendung in der gleichen Weise ausgewertet, wie das ein reales Terminal täte. Bei Login-Programmen werden die vom PTM gelesenen Daten über das Netzwerk zu einem Client-Programm gesendet, das mit einem Terminal oder einem Terminalemulator verbunden ist.

Mit Pseudoterminals können Sie auch die Eingabe für Programme (wie su(1) und passwd(1)) realisieren, die normalerweise keine Eingabe aus Pipes lesen.

/dev/ptmx, /dev/pts/*

Die Linux-Unterstützung für das oben Erwähnte (auch als Unix98 Pseudoterminal-Benennung bekannt) erfolgt mit dem devpts-Dateisystem, welches auf /dev/pts eingehängt werden sollte.

getpt(3), grantpt(3), ptsname(3), unlockpt(3), pty(7)

ÜBERSETZUNG

Die deutsche Übersetzung dieser Handbuchseite wurde von Martin Eberhard Schauer <Martin.E.Schauer@gmx.de>, Dr. Tobias Quathamer <toddy@debian.org>, Mario Blättermann <mario.blaettermann@gmail.com> und Helge Kreutzmann <debian@helgefjell.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 die Mailingliste der Übersetzer.

2. Mai 2024 Linux man-pages 6.9.1