Provided by: manpages-fr_4.15.0-9_all bug

NOM

       pty – Interfaces de pseudoterminaux

DESCRIPTION

       Un  pseudoterminal  (parfois abrégé en « pty ») est une paire de périphériques virtuels en
       mode texte qui fournissent un canal de communication bidirectionnel. Un bout du canal  est
       appelé le maître, l'autre bout est appelé l'esclave.

       L'extrémité  esclave  du  pseudoterminal  fournit une interface qui se comporte exactement
       comme un terminal classique. Un processus qui s'attend à être connecté à un terminal  peut
       ouvrir  l'extrémité  esclave  d'un  pseudoterminal  et  être piloté par un programme qui a
       ouvert l'extrémité maître. Tout ce qui est saisi sur le maître est fourni au processus sur
       l'esclave  comme  si  c'était  une  entrée  saisie sur un terminal. Par exemple, saisir le
       caractère d'interruption (en général Contrôle-C) sur le périphérique maître cause  l'envoi
       d'un  signal d'interruption (SIGINT) au groupe de processus en avant-plan qui est connecté
       à l'esclave. Réciproquement, tout ce qui est saisi sur  l'esclave  peut  être  lu  par  le
       processus qui est connecté au périphérique maître.

       Le flux de données entre le maître et l’esclave est géré de manière asynchrone, à peu près
       comme le flux de données d’un terminal physique. Les données saisies sur l’esclave  seront
       disponibles  rapidement  sur  le  maître, mais pourront ne pas l’être immédiatement. De la
       même façon, un petit délai de traitement entre une saisie sur le maître et l’apparition de
       l’effet sur l’esclave pourra exister.

       Historiquement,  deux API de pseudoterminaux ont évolué : BSD et System V. SUS version 1 a
       normalisé une API de pseudoterminal basée sur l'interface de System V et  cette  API  doit
       être utilisée dans tous les nouveaux programmes qui utilisent des pseudoterminaux.

       Linux  fournit à la fois des pseudoterminaux de type BSD et de type System V (normalisés).
       Les terminaux de type System V  sont  souvent  appelés  pseudoterminaux  UNIX 98  sur  les
       systèmes Linux.

       Depuis  le  noyau 2.6.4,  les pseudoterminaux de type BSD sont considérés obsolètes : leur
       prise en charge peut être désactivée lors de  la  construction  du  noyau  en  désactivant
       l’option  CONFIG_LEGACY_PTYS.  Depuis Linux 2.6.30, cette option est désactivée par défaut
       dans le noyau standard.  Les  pseudoterminaux  UNIX 98  doivent  être  utilisés  dans  les
       nouvelles applications.

   Pseudoterminaux UNIX 98
       Un maître de pseudoterminal UNIX 98 est ouvert en appelant posix_openpt(3) (Cette fonction
       ouvre le périphérique clone de maître, /dev/ptmx ; consultez pts(4)). Après avoir  réalisé
       n’importe  quelle  initialisation spécifique à un programme, 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 pseudoterminaux  UNIX 98  disponibles.  Dans
       les  noyaux jusqu'à la version 2.6.3 incluse, cette limite est configurée à la compilation
       du noyau (CONFIG_UNIX98_PTYS), et le nombre de  pseudoterminaux  autorisé  peut  atteindre
       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  relatif,
       /proc/sys/kernel/pty/nr,  indique  combien  de pseudoterminaux sont actuellement utilisés.
       Pour plus de détails sur ces deux fichiers, consultez proc(5).

   Pseudoterminaux BSD
       Les pseudoterminaux 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]  (Les
       intervalles  précis  de  lettre  dans ces ensembles varient entre les différentes versions
       d'UNIX). Par exemple, /dev/ptyp1 et /dev/ttyp1 constituent une  paire  de  pseudoterminaux
       BSD.  Un  processus  trouve  une  paire de pseudoterminaux inutilisée en essayant d'ouvrir
       chaque maître de pseudoterminal  avec  open(2)  jusqu'à  ce  qu'une  ouverture  réussisse.
       L'esclave  de pseudoterminal correspondant peut ensuite être ouvert (en remplaçant « pty »
       par « tty » dans le nom du maître).

FICHIERS

       /dev/ptmx
              Périphérique de clone 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ître BSD

       /dev/tty[p-za-e][0-9a-f]
              Périphériques esclaves BSD

NOTES

       Les pseudoterminaux sont utilisés par des applications comme  les  services  de  connexion
       réseau  (ssh(1),  rlogin(1),  telnet(1)),  les  émulateurs  de  terminal  comme  xterm(1),
       script(1), screen(1), tmux(1), unbuffer(1) et expect(1).

       Une description de l'ioctl(2) TIOCPKT, qui contrôle l'opération en mode paquet, se  trouve
       dans ioctl_tty(2).

       Les  opérations  ioctl(2)  BSD  TIOCSTOP,  TIOCSTART,  TIOCUCNTL et TIOCREMOTE ne sont pas
       implémentées sous Linux.

VOIR AUSSI

       ioctl_tty(2), select(2), setsid(2), forkpty(3), openpty(3), termios(3), pts(4), tty(4)

COLOPHON

       Cette page fait partie de la publication 5.13 du projet man-pages Linux.  Une  description
       du  projet et des instructions pour signaler des anomalies et la dernière version de cette
       page peuvent être trouvées à l'adresse https://www.kernel.org/doc/man-pages/.

TRADUCTION

       La traduction française de cette  page  de  manuel  a  été  créée  par  Christophe  Blaess
       <https://www.blaess.fr/christophe/>,  Stéphan  Rafin  <stephan.rafin@laposte.net>, Thierry
       Vignaud <tvignaud@mandriva.com>, François Micaux, Alain  Portal  <aportal@univ-montp2.fr>,
       Jean-Philippe    Guérard   <fevrier@tigreraye.org>,   Jean-Luc   Coulon   (f5ibh)   <jean-
       luc.coulon@wanadoo.fr>,   Julien    Cristau    <jcristau@debian.org>,    Thomas    Huriaux
       <thomas.huriaux@gmail.com>, Nicolas François <nicolas.francois@centraliens.net>, Florentin
       Duneau <fduneau@gmail.com>, Simon Paillard <simon.paillard@resel.enst-bretagne.fr>,  Denis
       Barbier  <barbier@debian.org>,  David  Prévot <david@tilapin.org> et Jean-Paul Guillonneau
       <guillonneau.jeanpaul@free.fr>

       Cette traduction est une documentation libre ; veuillez vous reporter  à  la  GNU  General
       Public   License   version 3  ⟨https://www.gnu.org/licenses/gpl-3.0.html⟩  concernant  les
       conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE.

       Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un
       message à ⟨debian-l10n-french@lists.debian.org⟩.