Unix est un système d'exploitation multi-utilisateurs et multitâches. Au début, les ordinateurs étaient chers, donc des appareils bon marché étaient connectés aux ordinateurs (il n'y avait ni claviers ni moniteurs à cette époque, et des bandes de papier et des cartes étaient utilisées pour l'entrée et la sortie) pour utiliser le système d'exploitation. un terminal, et un terminal peut également être considéré comme une console. Vous pouvez donc considérer l’ordinateur lui-même comme le terminal de la console et le périphérique de connexion bon marché comme le terminal physique.
Linux est un système de type Unix, il hérite donc également des caractéristiques du terminal. Mais ensuite, les ordinateurs sont devenus moins chers et des moniteurs et des claviers sont apparus, vous pouvez donc utiliser le clavier comme terminal d'entrée et le moniteur comme terminal de sortie. Ces terminaux étaient des terminaux virtuels, et le terminal virtuel était en fait une console virtuelle ou un périphérique virtuel.
Linux propose de nombreux types de terminaux virtuels, qui sont représentés par ttyN. Vous pouvez utiliser Ctrl+Alt+F[1-6] pour changer de terminal virtuel. Ces terminaux sont enregistrés dans le répertoire /dev/.
[root@xuexi ~]# ls /dev/tty tty tty12 tty17 tty21 tty26 tty30 tty35 tty4 tty44 tty49 tty53 tty58 tty62 ttyS0 tty0 tty13 tty18 tty22 tty27 tty31 tty36 tty40 tty45 tty5 tty54 tty59 tty63 ttyS1 tty1 tty14 tty19 tty23 tty28 tty32 tty37 tty41 tty46 tty50 tty55 tty6 tty7 ttyS2 tty10 tty15 tty2 tty24 tty29 tty33 tty38 tty42 tty47 tty51 tty56 tty60 tty8 ttyS3 tty11 tty16 tty20 tty25 tty3 tty34 tty39 tty43 tty48 tty52 tty57 tty61 tty9
tty plus la valeur est le terminal virtuel CTRL+ALT+F1 signifie passer au terminal tty1, ctrl+alt+f2 signifie passer à tty2. Terminal, généralement Linux ne fournit que la fonction de commutation entre les six terminaux ctrl+alt+f[1-6]. Les deux terminaux spéciaux sont tty et tty0. Tty représente le terminal actuellement utilisé et tty0 représente tous les terminaux virtuels actuellement activés. Il existe également des ttySN, ceux-ci représentent des terminaux série.
Il existe également des terminaux connectés à l'ordinateur depuis le réseau via ssh ou telnet, ou des terminaux en ligne de commande ouverts depuis le terminal virtuel graphique, qui sont appelés pseudo-terminaux, représentés par pts/N, et le périphérique correspondant est / Fichiers numériques N dans le répertoire dev/pts.
[root@xuexi ~]# ls /dev/pts/0 ptmx
0 représente le premier pseudo-terminal, 1 représente le deuxième pseudo-terminal.
La méthode de gestion du pseudo terminal est différente de celle de tous les autres terminaux. Elle est gérée via le programme qui se connecte à l'ordinateur. Par exemple, pour la connexion ssh, ssh se charge de demander les ressources du pseudo terminal et. nécessitant la saisie du nom d'utilisateur et du mot de passe. Si le processus de connexion ssh est interrompu, ce pseudo-terminal se fermera en conséquence.
De plus, certains programmes d'authentification peuvent ne pas nécessairement allouer un terminal pour le programme esclave de connexion. Par exemple, lors de l'exécution de sudo ssh, sudo peut ne pas nécessairement allouer un pseudo terminal pour ssh.
Sur Linux moderne, le terminal de console a une signification différente de sa signification d'origine. Son périphérique est mappé sur /dev/console. Toutes les informations générées par le noyau sont envoyées au terminal de console, tandis que les autres programmes utilisateur sont affichés. Les informations sont transmises à un terminal virtuel ou un pseudo-terminal.
Pour résumer :
/dev/console : terminal console
/dev/ttyN : terminal virtuel, ctrl+alt+f[1-6] commutateurs Terminal virtuel
/dev/ttySN : Terminal série
/dev/pts/N : Pseudo terminal, le terminal de ligne de commande ouvert sous le terminal graphique connecté par ssh et d'autres outils est le pseudo terminal .
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!