Page suivantePage pr�c�denteTable des mati�res

6. Fichiers sp�ciaux pour les terminaux tels que /dev/tty

"tty" est l'abr�viation de "Teletype". Les premiers terminaux �taient des t�l�types (comme machine � �crire pilot�e � distance). Voyez la sous-section t�l�types. On trouve une liste des p�riph�riques Linux (ce qui se trouve dans le r�pertoire /dev) dans "Linux Allocated Devices" (en fran�ais "P�riph�riques r�f�renc�s sous Linux"), normalement inclus dans les sources du noyau. Il "d�crit" � quoi sert un p�riph�rique en un mot ou deux mais ne vous dit pas comment l'utiliser.

6.1 Terminaux sur port s�rie

L'ordinateur consid�re chaque port s�rie comme un "p�riph�rique". On l'appelle parfois p�riph�rique terminal puisqu'� un moment les terminaux repr�sentaient une utilisation courante des ports s�rie. Pour chacun de ces ports s�rie, il existe un fichier sp�cial dans le r�pertoire /dev (device : p�riph�rique). /dev/ttyS0 est le fichier sp�cial pour le port s�rie connu sous le nom COM1 dans le monde DOS/Windows. Pour envoyer du texte � un terminal vous pouvez rediriger la sortie standard de certains programmes en ligne de commande vers le fichier sp�cial appropri�. Par exemple en tapant "echo test> /dev/ttyS1" � l'invite de commandes, le mot "test" devrait �tre envoy� sur le terminal sur ttyS1 (COM2) � condition que vous ayez la permission d'�crire sur /dev/ttyS1. De m�me, taper "cat mon_fichier> /dev/ttyS0" enverra le contenu du fichier mon_fichier sur COM1 (ttyS0).

En plus de ttyS0 (/dev/ttyS0), ttyS1, ttyS2, etc. (le "S" veut dire port S�rie) il y a aussi une s�rie de "cua" : cua0, cua1, cua2, etc. cua0 correspond au m�me port que ttyS0, etc. Le "cu" dans cua veut dire CalloUt (appel sortant). Les s�ries ttyS sont conformes � Posix alors que l'utilisation de cua peut permettre l'ouverture d'un port dont les lignes de contr�les du modem affirment qu'il n'est pas pr�t. � partir du noyau 2.2 cua est obsol�te et un message d'avertissement est affich� quand vous essayez de l'utiliser (bien qu'il fonctionne encore). Pendant les derni�res ann�es, il n'�tait pr�sent dans Linux que pour assurer une compatibilit� ascendante. Un programmeur peut faire en sorte que ttyS se comporte comme cua, et donc cua n'est pas vraiment utile.

6.2 Pseudo-terminaux

Les pseudo-terminaux n'ont pas de connecteur physique sur l'ordinateur. On les utilise pour �muler un port s�rie. Ils n'ont pas d'adresses E/S (IO) ni d'IRQ. Par exemple, si quelqu'un se connecte gr�ce � telnet sur votre ordinateur � travers un r�seau, il peut se trouver connect� au p�riph�rique /dev/ptyp2 (un port de pseudo-terminal). Dans X Window, le programme d'�mulation de terminal, xterm (ou rxvt), utilise des pseudo-terminaux. Les programmes pour les radioamateurs sous Linux les utilisent aussi. Avec certaines applications, il est possible d'attacher deux ou plus de deux pseudo-terminaux sur le m�me port s�rie physique.

Les pseudo-terminaux vont par deux comme ttyp3 et ptyp3. La s�rie pty... est le terminal ma�tre ou contr�leur et la s�rie tty... est l'esclave. ttyq5 est aussi un pseudo-terminal comme l'est ttysc (``c'' est un chiffre hexad�cimal). Plus pr�cis�ment, les pseudo-terminaux ma�tres sont /dev/pty[p-s]N et les esclaves correspondants sont /dev/tty[p-s]N o� N est un chiffre hexad�cimal entre 0 et f. L'esclave /dev/ttyp agit comme un port s�rie pour une application, elle peut y lire et y �crire. Cependant, l'application communique vraiment avec quelque soit le programme qui ecrit et lit au maitre /dev/pty correspondant. Aussi le maitre et l'esclave sont vraiment le meme "port" mais un est utilis� par l'application et l'autre par un programme r�seau (ou l'�quivalent) qui envoit (et r�cup�re) des donn�es au (et du) "port".

La norme Unix98 n'utilise pas les conventions ci-dessus, mais utilise � la place un "pty ma�tre" qui est /dev/ptmx. Celui-ci peut fournir un pty � la demande. Les d�tails sur l'utilisation des pseudo-terminaux avec d'autres programmes programmes se trouvent dans quelques pages de manuels, mais un manuel d�di� seulement aux pseudo-terminaux est n�c�ssaire pour Linux. D'autres unix-like ont une telle page nomm�e "pty - pseudo terminal driver".

6.3 Le terminal contr�lant /dev/tty

/dev/tty est le terminal contr�lant (s'il y en a un) le processus en cours. Pour d�terminer uels ttys sont attach�s � quels processus, utilisez la commande "ps -a" � l'invite de commandes (la ligne de commandes). Regardez la colonne "tty". Pour le processus shell que vous utilisez, /dev/tty est le terminal que vous utilisez � l'instant. Tapez "tty" � l'invite de commandes pour voir lequel c'est (voyez la page de manuel tty(1)). /dev/tty est quelque chose semblable � un lien vers le nom de p�riph�rique du terminal en cours avec certaines possibilit�s suppl�mentaires pour les programmeurs en C : voyez la page de manuel tty(4).

6.4 "Terminaux" /dev/ttyIN

N repr�sente un entier. L'une des utilisations possibles de ces terminaux dans Linux est le paquet du pilote ISDN (RNIS) : isdn4linux. La s�rie ttyIN ressemble � ttySN. Il y a aussi une s�rie cuiN qui ressemble � cuaN. Les s�ries ttyI et cui �mulent des modems et on peut leur envoyer des commandes de modems.

6.5 La console : /dev/ttyN

Dans Linux le moniteur du PC est en g�n�ral appel� la console et on lui associe plusieurs fichiers sp�ciaux de p�riph�riques : tty0, tty1, tty2, etc. Quand vous vous loggez vous �tes sur le tty1. Pour aller sur le tty2(sur le meme ecran) appuyez sur Alt-F2, pour tty3 appuyez sur Alt(Gauche)-F3. Ces (tty1, tty2, tty3, etc.) sont appell�s "terminaux virtuels". tty0 est juste un alias pour le terminal virtuel courant et c'est celui ou sont envoy�s les messages du syst�me. Aussi, les messages seront affich�s sur la console (moniteur) sans se coucier de quel terminal virtuel est affich�.

Vous pouvez vous logger sur diff�rents terminaux virtuels et ainsi avoir plusieurs sessions diff�rentes tournant en m�me temps sur l'ordinateur. Seuls le syst�me et l'utilisateur root peuvent �crire dans /dev/tty0 � laquelle /dev/console est quelquefois li�e. Pour plus d'informations sur la console, voyez la console Linux.

6.6 Cr�er un p�riph�rique avec "mknod"

Le r�pertoire /dev est install� avec beaucoup de fichiers sp�ciaux de p�riph�riques. Si vous avez besoin de quelque chose non pr�sent dans ce r�pertoire, vous pouvez essayer de le cr�er avec la commande "mknod". Voyez la page de manuel de ttys(4) pour savoir comment le faire pour les ports s�rie. Pour utiliser mknod vous devez conna�tre les num�ros de p�riph�riques mineur et majeur. Vous pourriez d�duire les num�ros dont vous avez besoin en utilisant la commande "ls -l" dans le r�pertoire /dev. Elle affichera les num�ros majeur et mineur des fichiers sp�ciaux existants.


Page suivantePage pr�c�denteTable des mati�res

Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:43