- 论坛徽章:
- 3
|
NAME
ptmx and pts - pseudo-terminal master and slave
DESCRIPTION
The file /dev/ptmx is a character file with major number 5 and minor number 2, usually of mode
0666 and owner.group of root.root. It is used to create a pseudo-terminal master and slave
pair.
When a process opens /dev/ptmx, it gets a file descriptor for a pseudo-terminal master (PTM),
and a pseudo-terminal slave (PTS) device is created in the /dev/pts directory. Each file
descriptor obtained by opening /dev/ptmx is an independent PTM with its own associated PTS,
whose path can be found by passing the descriptor to ptsname(3).
Before opening the pseudo-terminal slave, you must pass the master's file descriptor to
grantpt(3) and unlockpt(3).
Once both the pseudo-terminal master and slave are open, the slave provides processes with an
interface that is identical to that of a real terminal.
Data written to the slave is presented on the master descriptor as input. Data written to the
master is presented to the slave as input.
In practice, pseudo-terminals are used for implementing terminal emulators such as xterm(1),
in which data read from the pseudo-terminal master is interpreted by the application in the
same way a real terminal would interpret the data, and for implementing remote-login programs
such as sshd( , in which data read from the pseudo-terminal master is sent across the network
to a client program that is connected to a terminal or terminal emulator.
Pseudo-terminals can also be used to send input to programs that normally refuse to read input
from pipes (such as su(1), and passwd(1)). |
|