PTS(4)                     Linux Programmer's Manual                    PTS(4)

       ptmx and pts - pseudo-terminal master and slave

       The  file  /dev/ptmx  is a character file with major number 5 and minor
       number 2, usually of mode 0666 and  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 cre-
       ated  in the /dev/pts directory. Each file descriptor obtained by open-
       ing /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 pro-
       vides  processes  with an interface that is identical to that of a real

       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 emula-
       tors such as xterm(1), in which data read from the pseudo-terminal mas-
       ter 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(8), in which data read from the pseudo-terminal master  is
       sent across the network to a client program that is connected to a ter-
       minal or terminal emulator.

       Pseudo-terminals can also be used to send input to programs  that  nor-
       mally refuse to read input from pipes (such as su(8), and passwd(8)).

       /dev/ptmx, /dev/pts/*

       The  Linux  support  for the above (known as Unix98 pty naming) is done
       using the devpts filesystem, that should be mounted on /dev/pts.

       Before this Unix98 scheme, master ptys were called /dev/ptyp0, ...  and
       slave  ptys /dev/ttyp0, ...  and one needed lots of preallocated device

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

Linux                             2002-10-09                            PTS(4)

Man(1) output converted with man2html
list of all man pages