Name
ptmx, pts - Pseudoterminal Master und Slave
Beschreibung
Die Datei
/ dev / ptmx ist eine Zeichendatei mit der Hauptnummer 5 und der Nebennummer 2, normalerweise im Modus 0666 und der Gruppe owner.group von root.root. Es wird verwendet, um ein Pseudoterminal-Master-Slave-Paar zu erstellen.
Wenn ein Prozess / dev / ptmx öffnet , erhält er einen Dateideskriptor für einen Pseudoterminal-Master (PTM) und ein Pseudoterminal-Slave-Gerät (PTS) wird im Verzeichnis / dev / pts erstellt . Jeder Dateideskriptor, der durch Öffnen von / dev / ptmx abgerufen wird, ist ein unabhängiger PTM mit einem eigenen zugeordneten PTS, dessen Pfad durch Übergabe des Deskriptors an ptsname (3) ermittelt werden kann .
Bevor Sie den Pseudoterminal-Slave öffnen, müssen Sie den Dateideskriptor des Masters an grantpt (3) und unlockpt (3) übergeben .
Sobald sowohl der Pseudoterminal-Master als auch der Slave geöffnet sind, stellt der Slave den Prozessen eine Schnittstelle zur Verfügung, die mit der eines realen Terminals identisch ist.
In den Slave geschriebene Daten werden auf dem Master-Deskriptor als Eingabe dargestellt. In den Master geschriebene Daten werden dem Slave als Eingabe präsentiert.
In der Praxis werden Pseudoterminals zum Implementieren von Terminalemulatoren wie xterm (1) verwendet , bei denen vom Pseudoterminal-Master gelesene Daten von der Anwendung in der gleichen Weise interpretiert werden, wie ein echtes Terminal die Daten interpretieren würde, und zum Implementieren von Fernanmeldeprogrammen wie z B. sshd (8) , bei dem vom Pseudoterminal-Master gelesene Daten über das Netzwerk an ein Client-Programm gesendet werden, das mit einem Terminal oder Terminal-Emulator verbunden ist.
Pseudoterminals können auch zum Senden von Eingaben an Programme verwendet werden, die normalerweise keine Eingaben von Pipes lesen (z. B. su (1) und
passwd (1) ).