Provided by:
manpages-fr_2.80.1-1_all 
NOM
pty - Interfaces de pseudo-terminaux
DESCRIPTION
Un pseudo-terminal est une paire de périphériques en mode caractère
virtuels qui fournissent un canal de communication bidirectionnelle. Un
bout du canal est appelé le maître ; l’autre bout est appelé esclave.
Le bout esclave du pseudo-terminal fournit une interface qui se
comporte exactement comme un terminal classique. Un processus qui
s’attend à être connecté à un terminal peut ouvrir le bout esclave d’un
pseudo-terminal puis être piloté par un programme qui a ouvert le bout
maître. Tout ce qui est écrit sur le maître est fourni au processus sur
l’esclave comme si c’était écrit sur un terminal. Par exemple, écrire
le caractère d’interruption (en général control-C) sur le périphérique
maître cause l’envoi d’un signal d’interruption (SIGINT) au groupe de
processus qui est connecté à l’esclave. Réciproquement, tout ce qui est
écrit sur l’esclave peut être lu par le processus qui est connecté au
périphérique maître. Les pseudo-terminaux sont utilisés par des
applications telles que des services de login à distance (ssh(1),
rlogin(1), telnet(1)), les émulateurs de terminaux, script(1),
screen(1), et expect(1).
Historiquement, deux API de pseudo-terminaux ont évolué : BSD et
Système V. SUSv1 a standardisé une API de pseudo-terminal basée sur
l’interface Système V, et cette API doit être utilisée dans tous les
nouveaux programmes qui utilisent des pseudo-terminaux.
Linux fournit à la fois des pseudo-terminaux de type BSD et de type
Système V (standardisés). Les terminaux de type Système V sont souvent
appelés pseudo-terminaux Unix 98 sur les systèmes Linux. Depuis le
noyau 2.6.4, les pseudo-terminaux de type BSD sont considérés obsolètes
(il peuvent être désactivés à la configuration du noyau) ; les
pseudo-terminaux Unix 98 doivent être utilisés dans les nouvelles
applications.
Pseudo-terminaux Unix 98
Un maître de pseudo-terminal Unix 98 est ouvert en appelant
posix_openpt(3). (Cette fonction ouvre le périphérique de clonage de
maître, /dev/ptmx ; voir pts(4).) Après avoir initialisé le
périphérique, changé le propriétaire et les permissions du périphérique
esclave avec grantpt(3), et déverrouillé l’esclave avec unlockpt(3), le
périphérique esclave correspondant peut être ouvert en passant le nom
renvoyé par ptsname(3) dans un appel à open(2).
Le noyau Linux impose une limite au nombre de pseudo-terminaux Unix 98
disponibles. Dans les noyaux jusqu’à 2.6.3 inclus, cette limite est
configurée à la compilation du noyau (CONFIG_UNIX98_PTYS), et le nombre
de pseudo-terminaux autorisé peut être jusqu’à 2048, avec une valeur
par défaut de 256. Depuis le noyau 2.6.4, la limite est ajustable de
façon dynamique par le fichier /proc/sys/kernel/pty/max, et un autre
fichier, /proc/sys/kernel/pty/nr, indique combien de pseudo-terminaux
sont actuellement utilisés. Pour plus de détails sur ces fichiers, voir
proc(5).
Pseudo-terminaux BSD
Les pseudo-terminaux de type BSD sont fournis comme des paires
pré-créées, avec des noms de la forme /dev/ptyXY (maître) et /dev/ttyXY
(esclave), où X est une lettre de l’ensemble de 16 caractères [p-za-e],
et Y est une lettre de l’ensemble de 16 caractères [0-9a-f].
(L’intervalle précis de lettre dans ces ensembles varie entre les
différentes versions d’Unix.) Par exemple, /dev/ptyp1 et /dev/ttyp1
constitue une paire de pseudo-terminal BSD. Un processus trouve un
pseudo-terminal inutilisé en essayant d’ouvrir chaque maître de
pseudo-terminal avec open(2) jusqu’à ce qu’une ouverture réussisse.
L’esclave de pseudo-terminal correspondant peut ensuite être ouvert (en
remplaçant « pty » par « tty » dans le nom du maître).
FICHIERS
/dev/ptmx (périphérique de clonage de maître Unix 98)
/dev/pts/* (périphériques esclaves Unix 98)
/dev/pty[p-za-e][0-9a-f] (périphériques maîtres BSD)
/dev/tty[p-za-e][0-9a-f] (périphériques esclaves BSD)
NOTES
Une description de l’ioctl(2) TIOCPKT, qui contrôle l’opération en mode
paquet, se trouve dans tty_ioctl(4).
Les opérations ioctl(2) BSD TIOCSTOP, TIOCSTART, TIOCUCNTL et
TIOCREMOTE ne sont pas implémentées sous Linux.
VOIR AUSSI
select(2), setsid(2), forkpty(3), openpty(3), termios(3), pts(4),
tty(4), tty_ioctl(4)
COLOPHON
Cette page fait partie de la publication 2.80 du projet man-pages
Linux. Une description du projet et des instructions pour signaler des
anomalies peuvent être trouvées à l’adresse
http://www.kernel.org/doc/man-pages/.
TRADUCTION
Cette page de manuel a été traduite et mise à jour par Christophe
Blaess <http://www.blaess.fr/christophe/> entre 1996 et 2003, puis par
Alain Portal <aportal AT univ-montp2 DOT fr> jusqu’en 2006, et mise Ã
disposition sur http://manpagesfr.free.fr/.
Les mises à jour et corrections de la version présente dans Debian sont
directement gérées par Julien Cristau <jcristau@debian.org> et l’équipe
francophone de traduction de Debian.
Veuillez signaler toute erreur de traduction en écrivant Ã
<debian-l10n-french@lists.debian.org> ou par un rapport de bogue sur le
paquet manpages-fr.
Vous pouvez toujours avoir accès à la version anglaise de ce document
en utilisant la commande « man -L C <section> <page_de_man> ».