Réponses:
"tty" signifiait à l'origine "télétype" et "pty" signifie "pseudo-télétype".
Sous UNIX, / dev / tty * est tout périphérique qui agit comme un "télétype", c'est-à-dire un terminal. (Appelé télétype parce que c'est ce que nous avions pour les terminaux en ces jours bénis.)
Un pty est un pseudonyme, une entrée de périphérique qui agit comme un terminal pour le processus de lecture et d'écriture, mais qui est géré par autre chose. Ils sont apparus pour la première fois (si je me souviens bien) pour X Window et screen et similaires, où vous aviez besoin de quelque chose qui agissait comme un terminal mais pouvait être utilisé à partir d'un autre programme.
Ctrl-Alt-F{1..6}
elles sont connectées /dev/tty{1..6}
. La console Linux n'est pas un terminal physique, mais elle est connectée à un ttyN
(pas à un ptyN
). Est-ce que j'ai râté quelque chose?
Un tty est un terminal (il signifie télétype - les terminaux d'origine utilisaient une imprimante de ligne pour la sortie et un clavier pour l'entrée!). Un terminal est essentiellement un périphérique d'interface utilisateur qui utilise du texte pour l'entrée et la sortie.
Un pty est un pseudo-terminal - c'est une implémentation logicielle qui apparaît au programme attaché comme un terminal, mais au lieu de communiquer directement avec un "vrai" terminal, il transfère l'entrée et la sortie vers un autre programme.
Par exemple, lorsque vous vous connectez à une machine et que vous l'exécutez ls
, la ls
commande envoie sa sortie à un pseudo-terminal, dont l'autre côté est attaché au démon SSH.
*nix
le système d'exploitation basé crée ces pseudo-terminaux.
sshd
et xterm
sont deux exemples typiques.
Si vous exécutez la commande mount sans arguments de ligne de commande, qui affiche les systèmes de fichiers montés sur votre système, vous remarquerez une ligne qui ressemble à ceci: aucun sur le type / dev / pts devpts (rw, gid = 5, mode = 620) Ceci indique qu'un type spécial de système de fichiers, devpts, est monté dans / dev / pts. Ce système de fichiers, qui n'est associé à aucun périphérique matériel, est un système de fichiers «magique» créé par le Noyau Linux. Il est similaire au système de fichiers / proc
Comme le répertoire / dev, / dev / pts contient des entrées correspondant aux périphériques. Mais contrairement à / dev, qui est un répertoire ordinaire, / dev / pts est un répertoire spécial créé dynamiquement par le noyau Linux. Le contenu du répertoire varie avec le temps et reflète l'état du système en cours d'exécution. Les entrées dans / dev / pts correspondent à des pseudo-terminaux (ou pseudo-ATS ou PTY).
Linux crée un PTY pour chaque nouvelle fenêtre de terminal que vous ouvrez et affiche une entrée correspondante dans / dev / pts. Le périphérique PTY agit comme un périphérique terminal - il accepte les entrées du clavier et affiche la sortie texte des programmes qui y sont exécutés. . Les PTY sont numérotés et le numéro PTY est le nom de l'entrée correspondante dans / dev / pts.
Par exemple, si le numéro PTY de la nouvelle fenêtre de terminal est 7, appelez cette commande à partir d'une autre fenêtre:% echo 'Je suis un di virtuel'> / dev / pts / 7 La sortie apparaît dans la nouvelle fenêtre de terminal.
A tty
est un physique t erminal- t elet y orifice de pe sur un ordinateur ( en général un port série).
Le mot télétype est un raccourci de la machine à écrire télégraphique , ou appareil de téléscripteur des années 1930 - lui-même un appareil électromagnétique qui a remplacé les machines d'encodage télégraphique des années 1830 et 1840.
A pty
est un p seudo- t ele ty orifice pe fournie par un ordinateur du système d' exploitation du noyau à des programmes de logiciels d' émulation de connexion terminaux, tels que ssh, xterm, ou un écran.
Un terminal est simplement l'interface utilisateur d'un ordinateur qui utilise du texte pour l'entrée et la sortie.
Ces utilisation p seudo- t ele ty pe ports cependant, leur dénomination et les mises en œuvre ont divergé un peu.
Linux monte un système de fichiers spéciaux devpts sur / dev (le « s » debout vraisemblablement pour l Erial) qui crée une entrée correspondante dans /dev/pts
pour chaque nouvelle fenêtre de terminal que vous ouvrez, par exemple/dev/pts/0
macOS / FreeBSD utilisent également la structure de fichiers / dev , cependant, ils utilisent une TTY
convention de dénomination numérotée ttys
pour chaque nouvelle fenêtre de terminal que vous ouvrez, par exemple/dev/ttys002
Microsoft Windows a toujours le concept d'un LPT
port pour les terminaux d'imprimante de ligne dans son Command Shell pour la sortie vers une imprimante.