Page suivantePage pr�c�denteTable des mati�res

5. Vue d'ensemble du fonctionnement des terminaux (sous Linux)

Voir aussi la section quelques d�tails sur le fonctionnement des terminaux.

5.1 Noms de p�riph�riques

Chaque terminal est reli� � un port s�rie sur l'ordinateur h�te (souvent un simple PC). Les ports ont les noms suivants : ttyS0, ttyS1, ttyS2, etc. Ils sont repr�sent�s par des fichiers sp�ciaux dans le r�pertoire /dev (device : p�riph�rique). /dev/ttyS0 correspond au COM1 sous DOS ou Windows. ttyS1 est le COM2, etc. Voyez fichiers sp�ciaux pour les terminaux pour plus de d�tails sur ceux-ci et les "p�riph�riques" connexes tels que cua.

5.2 Se logger / se d�logger

Quand l'ordinateur h�te d�marre il lance le programme getty (voyez le HOWTO Serial 4.1 et 7.2) sur chaque port s�rie qui y poss�de un terminal (ainsi qu'il est sp�cifi� dans le fichier /etc/inittab). Le programme getty lance le programme "login" pour que les gens puissent se logger. Une invite "login:" appara�t � l'�cran. Les gens sur le terminal se loggent (apr�s avoir donn� leur mot de passe) et ont alors acc�s � l'ordinateur. Quand il est temps d'�teindre le terminal, on se d�logge en g�n�ral et on �teint le terminal. Voyez restrictions sur le login � propos de la restriction sur les logins (avec la permission pour l'utilisateur root de se logger sur un terminal).

5.3 Half/Full Duplex

Si on regarde quelqu'un taper sur un terminal, les lettres tap�es apparaissent simultan�ment sur l'�cran. Une personne na�ve pourrait penser que ce qu'on tape est envoy� directement du clavier � l'�cran avec une copie dirig�e vers l'ordinateur (de mani�re half-duplex, voir le paragraphe suivant). Ce qui se passe g�n�ralement est que ce qui est tap� au clavier est envoy� directement � l'ordinateur h�te uniquement qui en retour renvoie au terminal chaque caract�re qu'il re�oit (ce qu'on appelle full-duplex). Dans certains cas (comme les mots de passe ou des commandes brutes d'�diteurs) les lettres tap�es ne sont pas renvoy�es.

Full-duplex veut dire qu'il y a deux liens de communications unidirectionnels. Le full-duplex est la norme de fait sur les terminaux. Le half-duplex est la moiti� d'un duplex, ce qui veut dire qu'il n'y a qu'un lien de communication unidirectionnel. Ce lien doit �tre partag� par les communications allant dans les deux directions et on ne peut utiliser qu'une direction � la fois. Dans ce cas l'ordinateur n'est pas en mesure de r�p�ter les caract�res que vous tapez (et que vous lui envoyez) et par cons�quent le terminal doit aussi envoyer directement sur son �cran chaque caract�re que vous tapez. Certains terminaux poss�dent un mode de fonctionnement half-duplex qui est rarement utilis�.

5.4 M�moire du terminal

L'image sur un tube � �lectrons s'�vanouira presque instantan�ment � moins qu'elle ne soit r�affich�e fr�quemment sur l'�cran par un faisceau d'�lectrons lanc�s sur la face du tube. Puisque que le texte envoy� � un terminal doit rester sur l'�cran, l'image de l'�cran doit �tre stock�e dans les puces m�moire du terminal et le faisceau d'�lectrons doit balayer l'�cran de fa�on r�p�t�e (disons 60 fois par seconde) pour maintenir l'image. Voyez m�moire du terminal pour plus de d�tails.

5.5 Commandes pour le terminal

Le terminal est sous le contr�le de l'ordinateur. L'ordinateur envoie au terminal non seulement du texte pour afficher ce dernier sur l'�cran mais aussi des commandes que le terminal ex�cute. Ce sont des codes de contr�le (octets) et des s�quences d'�chappement. Par exemple, le code de contr�le CR (retour chariot) d�place le curseur sur le c�t� gauche de l'�cran. Une certaine s�quence d'�chappement (plusieurs octets dans lesquels le premier octet est le code de contr�le d'"�chappement") peut d�placer le curseur � l'emplacement de l'�cran sp�cifi� par les param�tres plac�s dans la s�quence d'�chappement.

Les premiers terminaux n'avaient que peu de telles commandes mais les terminaux modernes en ont des centaines. L'apparence de l'affichage peut �tre modifi�e � certains endroits : fort, faible, soulign�, clignotant et vid�o inverse. Un haut-parleur dans un terminal peut �mettre un "cliquetis" quand une touche est press�e ou �mettre un bip si une erreur s'est produite. Les touches de fonctions peuvent �tre programm�es pour des utilisations sp�ciales. Des polices vari�es peuvent exister. On peut faire d�filer l'affichage vers le haut ou vers le bas. On peut effacer des parties sp�cifiques de l'affichage. On peut utiliser divers types de contr�le de flux pour arr�ter le flux de donn�es quand les octets sont envoy�s au terminal plus rapidement que le terminal ne peut le supporter. Il y en a bien plus, que vous d�couvrirez en parcourant une notice de terminal tr�s technique ou � travers les liens Internet de la liste des s�quences d'�chappement.

5.6 Manque de normalisation r�solu par Terminfo

Alors que les terminaux faits pour les �tats-Unis utilisaient tous le m�me code ASCII pour l'alphabet (sauf les terminaux IBM qui utilisaient EBCDIC), il n'utilisaient malheureusement pas tous les m�mes s�quences d'�chappement. Ceci s'est produit m�me apr�s que plusieurs normes ANSI (et ISO) aient �t� �tablies puisque ces normes n'ont jamais �t� suffisamment matures. De plus, les vieux terminaux n'avaient pas les possibilit�s des nouveaux terminaux. Ceci pouvait poser des probl�mes. Par exemple, l'ordinateur pouvait envoyer une s�quence d'�chappement � un terminal lui disant de s�parer l'�cran en deux fen�tres de taille sp�cifi�e, sans r�aliser que le terminal �tait incapable de le faire.

Pour surmonter ces probl�mes une base de donn�es appel�e "termcap" (maintenant "terminfo") a �t� mise en place. Cette base de donn�es r�side dans certains fichiers sur l'ordinateur et en une partie (quelquefois le fichier entier) pour chaque mod�le de terminal. Pour chaque mod�le (comme le VT100) une liste des capacit�s est fournie, avec une liste de certaines s�quences d'�chappement disponibles et ce qu'elles font. Par exemple blink=\E5m veut dire que pour faire clignoter le curseur, il faut envoyer au terminal : Escape 5 m. Voyez la section termcap et terminfo (d�taill�s) pour plus de d�tails. Les applications peuvent utiliser cette base de donn�es en appelant certaines fonctions de la biblioth�que C. Un grand ensemble de tels programmes (il y en a plus de 200) est appel� "ncurses" et ils sont list�s sur la page de manuel de "ncurses".

5.7 L'interface

La variable d'environnement TERM d�crit le type de terminal que Linux croit que vous utilisez. Certaines applications l'utilisent pour regarder les capacit�s dans la base de donn�es terminfo et par cons�quent TERM doit �tre positionn�e correctement. Mais que l'ordinateur connaisse les capacit�s du terminal n'est qu'une partie du chemin vers une interface correcte.

Pour que les octets affluent de l'ordinateur vers le terminal, le terminal doit �tre configur� pour recevoir les octets � la m�me vitesse (en bits par seconde) qu'ils sont envoy�s du terminal. Si on configure le terminal pour recevoir � 19200 bauds et que l'ordinateur envoie des caract�res � 9600 bauds, on ne verra � l'�cran que des parasites (ou peut-�tre rien du tout). On s�lectionne la vitesse de transmission pour un terminal (ainsi que bien d'autres possibilit�s) � partir des menus de "configuration" (set-up) sur le terminal. La plupart des terminaux poss�dent un grand nombre d'options dans leurs menus de "configuration" (voyez configuration du terminal (d�taill�e)). Le port s�rie de l'ordinateur a aussi des options et ces options doivent �tre configur�es d'une mani�re compatible (voyez configuration de l'ordinateur (d�taill�e)).

5.8 �mulation

La plupart des terminaux de nos jours poss�dent plus d'une �mulation (personnalit� ou "mode de terminal"). Les num�ros de mod�les des terminaux fabriqu�s autrefois par DEC (Digital Equipment Corporation, maintenant Compaq) commencent par VT (par exemple, VT100). Bien d'autres terminaux diff�rents des VT100 peuvent �tre configur�s pour �muler un VT100. Wyse est un grand fabricant de terminaux et la plupart de leurs terminaux peuvent �muler des terminaux DEC divers comme les VT100 et les VT220. Par cons�quent si vous voulez, disons, utiliser un terminal VT320 vous pouvez soit utiliser un vrai VT320 en personnalit� "naturelle" soit utiliser un autre terminal capable d'�muler un VT320. Les personnalit�s "naturelles" ont en g�n�ral plus de capacit�s donc, toutes choses �tant �gales par ailleurs, c'est la meilleure option � utiliser.

Le type d'�mulation le plus courant est d'utiliser un PC comme si c'�tait un terminal vt100 (ou identique). Les programmes charg�s dans la m�moire du PC permettent ceci. Dans Linux (sauf si vous �tes dans X Window) le moniteur du PC (appel� la console) �mule un terminal de type "Linux" (proche du vt100). M�me certaines fen�tres dans X Window �mulent des terminaux. Voyez �mulation de terminal.

5.9 La console

Sur un PC, le moniteur est appel� la console. Elle �mule un terminal de type "Linux". On se logge dessus via un terminal virtuel. Voyez la console : /dev/tty?. Elle re�oit des messages du noyau concernant la progression du d�marrage (boot) et de l'arr�t de la machine. On peut faire en sorte que les messages allant normalement sur la console aillent sur le terminal. Pour ceci, vous devez patcher et recompiler le noyau � la main, sauf pour les noyaux 2.2 (et plus) pour lesquels il s'agit d'une option de configuration. Voyez faire qu'un terminal devienne la console.


Page suivantePage pr�c�denteTable des mati�res

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