Pour tenter d'installer un terminal rapidement, voyez installation rapide.
Copyright 1998-9 par David S. Lawyer. Veuillez copier et distribuer librement ce document (par la vente ou le don). Contactez le mainteneur pour les corrections et les changements mineurs. Sinon, vous pouvez cr�er et distribuer des travaux d�riv�s � la condition que vous :
Si vous considerez faire un travail d�riv� autre qu'une traduction, il est requis d'en discuter avec le mainteneur courant.
Bien que je n'ai pas tent� de vous induire sciemment en erreur, il y a s�rement un certain nombre d'erreurs dans ce document. Veuillez me les signaler. Puisque c'est une documentation libre, il devrait �tre �vident que je ne peux pas �tre tenu l�galement responsable des erreurs commises.
Si certains mots repr�sentent des marques d�pos�es, le contexte devrait indiquer clairement � qui elles appartiennent. Par exemple, "MS Windows NT" implique que "Windows NT" appartient � Microsoft (MS). Mac est fabriqu� par Apple Computer. Les marques d�pos�es appartiennent � leurs propri�taires respectifs.
La majeure partie de la section "Connexion physique" provient du Howto Serial v. 1.11 de Greg Hankins (avec sa permission). Sa partie : "Comment configurer un terminal connect� � mon PC ?" a �t� incorpor�e dans la version 1.00 en des endroits vari�s. v1.09 a 25 changements (et corrections d'erreurs) sugg�r�s par Alessandro Rubini qui a pass� en revu ce HOWTO.
Pour la traduction en fran�ais, j'aimerais remercier Xavier Glattard, qui a entrepris le d�but de la traduction et que j'ai reprise en cours ; ainsi que Guillaume All�gre et Jean-Luc Cassel qui ont fait un �norme travail de relecture.
Pour ma part (Julien Garnault) Je remercie Olivier Tharan qui a fait du tr�s bon travail. Ce qui m'a permis de reprendre ce HOWTO sans trop de problemes.
Veuillez me signaler toute erreur dans les faits, les opinions, la logique, l'orthographe, la grammaire, la clart�, les liens, etc. Mais d'abord, si la date est vieille de plus de quelques mois, v�rifiez que vous avez la derni�re version. Veuillez m'envoyer toutes les informations que vous pensez �tre pertinentes pour ce document. [ NdT : cela s'applique aussi pour la version fran�aise ! ]
� partir de la version 1.00, j'ai tent� pour la premi�re fois d'aider les gens � configurer des terminaux sans recourir � un manuel de terminal. Il en faudrait bien plus � cet �gard. Une mani�re de r�soudre ce probl�me serait que les fabricants de terminaux mettent leurs manuels sur Internet. Je vous sugg�re de les encourager � le faire. Fournir des informations sur la configuration de la plupart des terminaux dans ce HOWTO est une t�che d�courageante. Il y a beaucoup de terminaux diff�rents, mais il y a bien moins de mod�les qu'il n'y en avait dans les ann�es 1980, la t�che n'est donc pas totalement impossible � r�aliser.
Veuillez m'envoyer tous les manuels de terminaux que vous pourriez avoir en trop, surtout sur les terminaux fabriqu�s dans les dix derni�res ann�es (mais j'accepterai aussi les manuels plus anciens). De plus, vous pourriez �crire quelque chose sur un certain type de terminal pour l'annexe D : Notes par nom de marque.
Les nouvelles versions du HOWTO seront disponibles � la navigation Internet et au t�l�chargement sur les sites miroirs du LDP (Linux Documentation Project). Voyez http://metalab.unc.edu/LDP/mirrors.html pour avoir une liste de ces miroirs. Divers formats sont disponibles. Si vous voulez chercher rapidement la date de la derni�re version, allez � http://metalab.unc.edu/LDP/HOWTO/Text-Terminal-HOWTO.html. (NdT : le miroir officiel en France est http://www.freenix.org/unix/linux/HOWTO/Text-Terminal-HOWTO.html.)
Configuration veut dire la m�me chose que mise en place (NdT : j'ai utilis� le mot "configuration" tout au long du document). Alors que les commandes Linux poss�dent des options (avec le symbole -), les options dans un sens plus vaste sont d'autres types de choix. L'installation au sens large comprend la configuration du mat�riel et du logiciel. Une affirmation que je pense �tre vraie (mais qui peut ne pas l'�tre) se termine par deux points d'interrogation : ?? Si vous �tes s�r de l'affirmation, dites-le moi.
Un terminal consiste en un �cran et un clavier qu'on utilise pour communiquer � distance avec un ordinateur (h�te). On l'utilise comme s'il s'agissait d'un ordinateur personnel mais le terminal est �loign� de l'ordinateur h�te (� l'autre bout de la pi�ce ou m�me � l'autre bout du monde). Les programmes s'ex�cutent sur l'ordinateur h�te mais les r�sultats s'affichent sur l'�cran du terminal. Sa capacit� de calcul est relativement faible (sinon ce serait un ordinateur et non un terminal). Cette capacit� de calcul est en g�n�ral limit�e � la capacit� d'afficher ce qu'on lui envoie (il est possible que ceci comprenne des graphiques plein �cran) et la capacit� d'envoyer � l'h�te ce qui est tap� au clavier.
Dans les temps �loign�s des gros ordinateurs, du milieu des ann�es 1970 au milieu des ann�es 1980, la plupart des gens utilisaient des terminaux pour communiquer avec les ordinateurs. Ils y tapaient des programmes, les faisaient tourner, �crivaient des documents, envoyaient des commandes d'impression, etc. Un c�ble reliait le terminal � l'ordinateur (souvent de mani�re indirecte). On l'appelait terminal puisqu'il �tait situ� � une extr�mit� terminale de ce c�ble.
Si vous utilisez Linux (sauf pour une utilisation avec X Window) avec un moniteur et un clavier vous savez d�j� ce qu'est un terminal parce que vous en utilisez un (ou plus pr�cis�ment un "terminal virtuel"). Le moniteur (avec le clavier) s'appelle console, mais il �mule un terminal. Dans X Window : xterm, rxvt et zterm �mulent des terminaux.
Un vrai terminal est diff�rent d'un moniteur parce que c'est un montage �lectronique diff�rent. Un terminal texte est souvent reli� au port s�rie de l'ordinateur par l'interm�diaire d'un long c�ble. Ainsi, contrairement � un moniteur qui est le plus souvent situ� juste � c�t� de l'ordinateur, un terminal peut se situer � une distance assez grande de son ordinateur h�te. La carte vid�o � l'int�rieur d'un ordinateur stocke l'image vid�o qui appara�t sur l'�cran du moniteur. Pour un terminal, l'�quivalent de cette carte vid�o est construite � l'int�rieur m�me du terminal mais puisque les terminaux texte sont souvent monochromes sans beaucoup de graphiques, les capacit�s de cette "carte vid�o" sont plut�t faibles. De plus, la plupart des terminaux texte n'ont pas de souris.
Dans la terminologie client-serveur en r�seau, on pourrait penser que le terminal est le client et l'ordinateur h�te le serveur. Certains ont appel� le terminal un "client l�ger". Mais ce n'est pas vraiment un "client" et l'h�te n'est pas vraiment un "serveur". Le seul "service" fourni par l'h�te est de recevoir chaque lettre tap�e au clavier et de r�agir � ceci comme un ordinateur le ferait. Le terminal ressemble � une fen�tre donnant sur l'ordinateur comme l'est un moniteur (et son clavier). Vous avez s�rement d�j� utilis� des terminaux virtuels dans Linux (en pressant Alt(gauche)-F2, etc.). Un vrai terminal est la m�me chose que lancer un terminal virtuel mais vous le lancez sur l'�cran du terminal plut�t que de partager le moniteur. Par rapport � l'utilisation d'un terminal virtuel sur la console (moniteur), ceci permet � une autre personne de s'asseoir devant le terminal r�el et d'utiliser l'ordinateur en m�me temps que d'autres personnes.
Il y a plusieurs d�finitions contradictoires pour un "terminal passif" mais � mesure que le temps passe, de plus en plus de terminaux sont appel�s passifs. Ce document couvre principalement les terminaux texte qui n'affichent que du texte � l'�cran. On pourrait l'appeler "HOWTO Terminaux Passifs" mais dans certains articles de magazine, tout terminal, quelle que soit son intelligence, m�me ceux qui pr�sentent une interface graphique compl�te (GUI), sont appel�s passifs. Si tous les terminaux sont "passifs" il n'y a plus de raison d'ajouter le mot "passif" derri�re le mot terminal (sauf dans un baratin commercial pour vendre des ordinateurs ou similaires en tant que terminaux "intelligents"). � cause de la signification ambigu� de "terminal passif", ce n'est pas consid�r� ici comme un type de terminal.
Pour un terminal texte, un flux d'informations � double sens entre l'ordinateur et le terminal se forme sur le c�ble les reliant tous les deux. Ce flux est constitu� d'octets ASCII o� chaque octet repr�sente g�n�ralement un caract�re. Les octets tap�s au clavier vont vers l'ordinateur et la plupart des octets venant de l'ordinateur sont affich�s sur l'�cran du terminal. Des octets sp�ciaux (ou des s�quences d'octets) de l'ordinateur indiquent au terminal o� d�placer le curseur, ce qu'il faut effacer, o� d�marrer et arr�ter le soulignement et/ou le clignotement et/ou le gras, etc. Il y a souvent des centaines de commandes sp�ciales et beaucoup de terminaux peuvent m�me changer leur police.
La communication utilise des caract�res (lettres) encod�es avec un tableau de codes correspondant au jeu de caract�res en cours d'utilisation. En g�n�ral, les 128 premiers octets sur les 256 octets possibles utilisent les codes ASCII. Les terminaux pour des syst�mes de type Unix sont normalement connect�s aux ordinateurs par un c�ble qui se d�roule entre les ports s�rie asynchrones (RS-232-C = EIA-232-D) de l'ordinateur h�te et du terminal. Quelquefois la connexion se fait par modem ou gr�ce � un serveur de terminaux, etc.
D'autres noms pour les terminaux texte sont "terminal s�rie", "terminal � cellule de caract�re", "terminal ASCII/ANSI", "terminal asynchrone", "terminal de donn�es", "terminal vid�o" et "terminal d'affichage vid�o" (VDT). Dans les jours anciens, "unit� d'affichage vid�o" (VDU) �tait utilis� pour les terminaux mais en toute rigueur, ceci exclut le clavier.
Le "mode par blocs" �tait exclusivement utilis� par les vieux terminaux des minis IBM mais beaucoup de terminaux modernes poss�dent aussi cette capacit� (qui n'est pas beaucoup utilis�e). Les caract�res que vous tapez sont retenus temporairement dans la m�moire du terminal (et peuvent parfois �tre �dit�s gr�ce � un �diteur r�sidant dans le terminal). Alors quand la touche envoi (ou autre) est press�e, un bloc de caract�res (parfois juste une ligne de caract�res) est envoy� tout d'un coup � l'ordinateur. Le mode par blocs (� la fin 1998) n'est pas support� par Linux. Voyez la section mode par blocs.
Jusqu'� un certain degr� certains symboles ASCII peuvent fournir du graphisme aux terminaux texte. On peut faire des fl�ches <--- et dessiner des bo�tes avec _ et |. Avec des ensembles sp�ciaux de caract�res graphiques, on peut en faire encore plus. Aucun de ceux-ci ne sont vraiment des terminaux graphiques. Cependant, le terme "terminal graphique" est quelquefois donn� � tous les terminaux texte puisque le texte est une forme limit�e de graphique.
Il y a deux types de base pour l'affichage graphique : rast�ris� et vectoris� (rarement utilis�). Les graphiques rast�ris�s (en mode point par point) affichent des points sur l'�cran sur des lignes de balayage horizontal par l'interm�diaire d'un faisceau d'�lectrons (ou en activant des pixels ou points sur un �cran plat). Les affichages � graphisme vectoriel sont g�n�ralement destin�s � des �crans monochromes qui n'ont pas de points. Ils utilisent une �lectronique intelligente pour tracer des lignes et des courbes avec un faisceau d'�lectrons qui peut se d�placer dans n'importe quelle direction (� tout endroit et avec tout angle). Les graphiques vectoriels affichent des lignes de grande qualit� sans zigzags mais sont � la fois rares et chers. Les graphiques rast�ris�s sont utilis�s de mani�re quasi-universelle de nos jours. Pour les PC, les images cod�es en format graphique vectoriel sont quelquefois utilis�es mais sont traduites en format graphique rast�ris� pour l'affichage (avec une baisse de qualit� pour l'image).
La plus grande partie de ce document s'applique aussi � ceux-ci. La plupart de ceux-ci peuvent aussi fonctionner comme des terminaux texte. Les protocoles pour de tels terminaux graphiques sont : Tektronix Vector Graphics, ReGIS (DEC), Sixel (DEC) et NAPLPS (North American Presentation Level Protocol Syntax, syntaxe de protocole au niveau pr�sentation d'Am�rique du Nord).
Ceux-ci ne sont pas couverts par ce document. Un terminal qui m�rite qu'on l'appelle intelligent est un terminal graphique qui peut afficher rapidement des graphiques plein �cran comme un moniteur de PC. Il aura aussi une souris. Les octets qu'on lui envoie repr�sentent souvent des bits pour des images (et souvent des graphiques). Il utilisera souvent une connexion � grande vitesse vers son ordinateur h�te en utilisant de la paire torsad�e ou un c�ble coaxial. Les terminaux X Window font partie de ces mod�les. Voyez le lien vers le HOWTO XTerminal r�f�renc� en HOWTOs connexes
Pour afficher une interface graphique MS-Windows il y a plusieurs types d'interfaces et de terminaux : WinTerm en est un, il utilise le logiciel WinFrame de Citrix. Un autre est Hydra de Microsoft (nom de code), bas� en partie sur le code de Citrix, aussi connu comme "Serveur de Terminal Windows" qui fonctionne avec la version 4 ou sup�rieure de Windows NT. Citrix utilise son protocole ICA et a cr�� un suppl�ment � Hydra nomm� pICAsso pour que les terminaux WinFrame (ICA) puissent utiliser le syst�me ICA. Hydra est aussi multi-utilisateurs. Il y a aussi le "Terminal Personnel Multiconsole" de Unbounded Technologies et Tektronix poss�dait son interface multi-utilisateurs mais supportera d�sormais Hydra. Un article de magazine en 1997 a appel� Winterm un "terminal passif" mais il est vraiment intelligent. De tels terminaux sont souvent appel�s "clients l�gers", mais certains clients l�gers sont plus que de simples terminaux puisqu'on peut leur faire ex�cuter du code Java, etc.
Ce ne sont ni de vrais ordinateurs ni de vrais terminaux mais quelque chose entre les deux. Un type de Network Computers (NC) est un ordinateur avec un processeur mais pas de disque dur. Il est enti�rement graphique et se connecte � un ordinateur serveur. Il est diff�rent d'un terminal puisque le programme qu'il fait tourner s'ex�cute sur son propre processeur. Du code Java peut lui �tre envoy� pour �tre ex�cut�. IBM appelle ceci une "station r�seau" (Network Station). Ils devraient fonctionner sur des r�seaux IP et pourraient fonctionner avec un serveur sous Linux. Wintel a fabriqu� un "NetPC" qui, � la diff�rence du NC, est presque un ordinateur PC. Cependant, il n'a pas de disque amovible et les utilisateurs ne peuvent pas installer leur propre logiciel ou obtenir des copies de quoi que ce soit.
Bien que les promoteurs des NCs et des terminaux graphiques similaires aient pr�vu de remplacer des millions de PCs, cela n'est pas encore arriv�. L'une des raisons principales est que les PCs ont vu leurs prix chuter dans les derni�res ann�es et sont souvent moins chers que les NCs. Ainsi pour les terminaux, les terminaux texte sont encore pr�dominants.
Puisqu'un PC poss�de un �cran et un clavier (comme un terminal) mais poss�de aussi plus de puissance de calcul, il est facile d'utiliser une partie de cette puissance de calcul pour que le PC se comporte comme un terminal texte. C'est ce que l'on appelle "l'�mulation de terminal". Ils �mulent en g�n�ral des terminaux texte. Voyez �mulation de terminal
Voici une proc�dure rapide pour installer un terminal sans passer par une proc�dure de mise en place � la fois pour le terminal et l'ordinateur h�te. Cela ne fonctionnera probablement pas bien s'il se trouve que le terminal a �t� configur� de mani�re incompatible avec l'ordinateur. Si vous ne comprenez pas tout ceci vous devrez consulter d'autres parties de ce document pour plus d'informations.
Pour installer un terminal, regardez d'abord dans /etc/termcap
ou
terminfo.src
pour y trouver une entr�e le concernant (voir
terminfo et termcap (d�taill�)). D�terminez sur quel
port s�rie vous le brancherez et quelle est le nom tty pour ce port (par
exemple, ttyS1
, voyez
noms de p�riph�riques). En tant qu'utilisateur root, �ditez /etc/inittab
et ajoutez une commande getty � c�t� des autres commandes getty. Le format de
la commande getty d�pend du programme getty que vous utilisez. agetty
(simplement appel� getty
dans la distribution Debian) est le plus simple
(pas de fichier de configuration). Voyez le fichier "info
" ou la page de
manuel de getty. Pour les param�tres de getty, utilisez le nom terminfo (ou
termcap) de votre terminal, comme vt100. Entrez une vitesse de transmission
support�e par le terminal. Si vous mettez la vitesse trop haut vous aurez
peut-�tre besoin d'utiliser le
contr�le de flux.
Connectez alors physiquement le port s�rie principal du terminal au port s�rie choisi de l'ordinateur avec un c�ble null-modem et allumez le terminal. N'esp�rez pas que la plupart des c�bles tout pr�ts soient c�bl�s correctement pour g�rer le contr�le de flux mat�riel. Assurez-vous que la vitesse de transmission du terminal est la m�me que celle que vous avez donn�e � getty et que son param�tre "bits de donn�es" est 8. Alors, sur la console de l'ordinateur tapez "init q" pour faire prendre en compte les changements que vous avez faits au fichier inittab. Vous devriez maintenant voir une invite de login sur le terminal. Sinon, appuyez sur la touche retour chariot du terminal. Si cela ne fonctionne pas, continuez de lire ce document et/ou voyez r�gler les probl�mes.
Les PC sont de nos jours si puissants qu'un seul PC peut souvent supporter plusieurs personnes � la fois en train de l'utiliser, surtout s'ils ex�cutent des t�ches faibles en charge telles que l'�dition de texte, l'entr�e de donn�es, etc. Une mani�re de faire ceci est de relier un certain nombre de terminaux � un seul PC (ordinateur h�te) par l'interm�diaire de modems ou de connexions directes par c�ble. Pour ce faire, il est mieux d'avoir un syst�me d'exploitation multi-utilisateurs tel que Linux, comma ca chaque utilisateur sur un terminal peut utiliser l'ordinateur independemment. On a appel� cela le "partage de temps" (time sharing) mais ce n'est pas une terminologie correcte de nos jours puisque l'informatique "distribu�e" sur un r�seau est aussi une sorte de partage de temps. On pourrait mieux le d�crire comme de l'informatique "centralis�e". Mais l'ordinateur central peut �tre connect� au reste du monde par un r�seau afin que les utilisateurs des terminaux puissent envoyer du courrier �lectronique, naviguer sur Internet avec le navigateur "lynx", etc. Ce n'est donc pas vraiment "centralis�" non plus.
On a rarement utilis� des terminaux avec des PC parce que les syst�mes d'exploitation populaires qui les ont utilis�s (Windows, DOS et Mac) n'ont pas �t� multi-utilisateurs jusqu'en 1998 (c'est le cas pour MS Windows NT) et ne pouvaient pas auparavant tres bien accepter de terminaux. Maintenant que Linux, syst�me d'exploitation multi-utilisateurs, est disponible pour les PC, l'utilisation de terminaux avec des PC devient envisageable. L'inconv�nient est que les terminaux texte ne sont pas assez perfectionn�s pour supporter le type d'interface graphique utilisateur (GUI) que bien des utilisateurs d'ordinateur attendent de nos jours.
Quand les ordinateurs (m�me les PCs) �taient relativement chers, l'utilisation de terminaux tirait les co�ts du mat�riel vers le bas de mani�re significative. Maintenant, avec les PCs bon march�, les �conomies sur les co�ts sont un probl�me. Voici ce que j'ai �crit il y a des ann�es quand les PCs �taient plus chers. C'est encore vrai maintenant, mais d'une moindre mesure.
Si plusieurs personnes utilisent le m�me ordinateur en m�me temps, il y a une diminution de la quantit� de mat�riel n�cessaire pour le m�me niveau de service. Une fa�on de faire des �conomies est due au partage du code. Les fichiers des applications sur les disques durs sont partag�s, de m�me que les biblioth�ques partag�es en m�moire (m�me si les gens font tourner des programmes diff�rents, � condition qu'ils utilisent certaines fonctions identiques dans leur code). Une autre fa�on d'�conomiser est due � la r�duction du pic de charge. Le mat�riel d'un seul PC peut �tre inactif la plupart du temps pendant que les gens entrent les informations lentement, r�fl�chissent, discutent ou s'�loignent de leur bureau. Avoir plusieurs personnes sur le m�me ordinateur � la fois fait bon usage d'une bonne partie de ce temps d'inactivit� qui, sinon, serait g�ch�.
Ces �conomies sont substantielles. On peut estimer grossi�rement (en utilisant la th�orie des statistiques) que pour neuf personnes (huit terminaux et une console), le PC partag� n'a besoin que d'environ trois fois plus de capacit� (en m�moire, espace disque, puissance processeur, etc.) qu'un PC unique afin de fournir le m�me niveau de service par personne. Le co�t par utilisateur du mat�riel de calcul pour un tel syst�me partag� devrait donc �tre trois fois moindre. Cependant, le co�t du syst�me d'affichage (�crans, claviers, �lectronique vid�o, etc.) est � peu pr�s le m�me dans les deux cas. Les terminaux induisent cependant un surco�t : l'�quipement de l'ordinateur h�te avec des ports s�rie suppl�mentaires.
Pour faire une comparaison honn�te avec les PC, les terminaux devraient avoir les m�mes capacit�s que les moniteurs de PC. Malheureusement, les terminaux graphiques couleur pour Linux (X Window) avec des communications � grande vitesse est un march� de niche avec des prix �lev�s, et par cons�quent dans ce cas les �conomies en co�t de mat�riel risquent d'�tre inexistantes. Pour les terminaux texte, par contre, on fera des �conomies, surtout si on obtient les terminaux � bas prix.
En informatique centralis�e, les logiciels (et les mises � jour des logiciels) ne doivent �tre install�s que sur un seul ordinateur h�te au lieu de plusieurs. La personne qui s'occupe de cet ordinateur peut contr�ler les logiciels qui y sont install�s. Ceci est avantageux si la personne qui contr�le l'ordinateur h�te fait du bon travail et conna�t les besoins et pr�f�rences des autres utilisateurs. On peut emp�cher les utilisateurs de jouer � des jeux ou de naviguer sur Internet en n'installant pas les logiciels (ou bien en en restreignant l'acc�s). Que le contr�le centralis� soit d�sirable ou non d�pend de chaque situation.
Avec les terminaux, les mises � jour du mat�riel de l'ordinateur ne prennent place que sur un ordinateur au lieu de plusieurs. Ceci �conomise un effort d'installation. Alors que le co�t du mat�riel pour la mise � jour de l'ordinateur h�te sera plus important que pour un PC simple (puisque l'h�te a besoin de plus de puissance de calcul qu'un PC), le co�t sera bien moindre que de mettre � jour le materiel d'un nombre de PC qu'on utiliserait � la place des terminaux.
Les terminaux texte repr�sentent une technologie obsol�te parce que pour un mat�riel l�g�rement plus cher, on pourrait construire un terminal intelligent (avec la m�me qualit� d'affichage). Ceci n'a pas toujours �t� le cas puisque aux alentours de 1980 la m�moire co�tait des milliers de francs par m�ga-octet. Maintenant avec de la m�moire et des processeurs � bas prix, on pourrait faire un terminal texte intelligent pour une augmentation du co�t du mat�riel de seulement 10 � 20 %.
Les raisons pour lesquelles les terminaux texte ne sont pas encore obsol�tes sont :
Voir aussi la section quelques d�tails sur le fonctionnement des terminaux.
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.
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).
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�.
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.
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.
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".
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)).
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.
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.
"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.
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.
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".
/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).
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.
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.
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.
Si vous ne connaissez presque rien sur les terminaux, je vous sugg�re de lire en premier introduction et de lire aussi survol du fonctionnement des terminaux.
L'�cran du terminal se rafra�chit peut-�tre 60 fois par seconde � partir d'une image stock�e dans la m�moire du terminal. Pour un PC l'image du moniteur est stock�e dans la m�moire de la carte vid�o � l'int�rieur de l'ordinateur mais pour un terminal, l'�quivalent de la carte vid�o est � l'int�rieur du terminal. Pour un terminal texte le stockage d'une image utilise peu de m�moire. Au lieu de placer chaque point (pixel) sur l'�cran en m�moire, ce qui demande le stockage d'� peu pr�s 250.000 points, on utilise une m�thode de stockage bien plus efficace.
Un �cran rempli de texte peut �tre repr�sent� dans la m�moire du terminal par des octets ASCII, un pour chaque caract�re � l'�cran. Un �cran entier ne prend qu'environ 2 K octets ASCII. Pour afficher ces caract�res, le terminal doit aussi conna�tre l'image (la forme) de chacun des presque 100 caract�res ASCII imprimables. L'image d'un caract�re n'occupant que, disons, 15 octets, on n'a besoin que d'environ 1,5 K de m�moire pour les images de tous les caract�res ASCII (la police). Ce texte ASCII et la m�moire de la police sont balay�s pour que l'image r�sultante soit affich�e � l'�cran environ 60 fois par seconde. C'est une forme de m�moire partag�e o� l'image unique d'une lettre telle que la lettre e est partag�e par toutes les nombreuses lettres e qui apparaissent sur un �cran rempli de texte. Une faible demande en m�moire impliquait des co�ts r�duits pour produire des moniteurs au d�but des ann�es 1980 quand le co�t de la m�moire �tait plusieurs milliers de fois plus important qu'il ne l'est actuellement (ce qui repr�sentait � l'�poque plusieurs dollars par kilo-octet).
Les premiers terminaux ressemblaient � des machines � �crire contr�l�es � distance qui ne pouvaient "afficher" (imprimer sur du papier) que le flux de caract�res que leur envoyait l'ordinateur. Les premiers mod�les �taient appel�s t�l�types. Le nom "tty" n'est que l'abr�viation de "Teletype". Les premiers terminaux �taient capables de faire un saut de ligne et un retour chariot comme une machine � �crire et faire tinter une sonnette quand un caract�re sonnette (bell) �tait re�u. � cause du manque de possibilit�s significatives, ce sont les premiers terminaux � avoir re�u l'appellation "simple" (dumb). Ce genre d'interface terminale (l'utilisation d'un type de terminal appel� "dumb") est quelque fois utilis� de nos jours quand l'ordinateur ne peut pas d�terminer avec quelle sorte de terminal il communique.
Les terminaux poss�dent beaucoup de possibilit�s dont certaines sont toujours pr�sentes ; pour les autres, l'ordinateur doit envoyer des commandes au terminal afin de modifier ou activer ces possibilit�s. Mettre en oeuvre toutes ces possibilit�s sous le contr�le d'un ordinateur n�cessite la mise en place de codes sp�ciaux pour que l'ordinateur puisse dire au terminal ce qu'il doit faire. Il y a deux grandes sortes de codes : les s�quences d'�chappement et les code de contr�le (caract�res de contr�le). Il y a bien plus de s�quences d'�chappement que de codes de contr�le.
Les codes de contr�le (ou caract�res de contr�le) sont constitu�s des 32 premiers octets de l'alphabet ASCII. Ils comprennent les codes suivants : retour chariot (curseur � l'extr�mit� gauche), saut de ligne (curseur une ligne vers le bas), retour en arri�re, caract�re d'�chappement, tabulation et sonnette. Ils ne s'impriment normalement pas sur l'�cran. Il y a souvent une commande que vous pouvez envoyer � votre terminal qui fera qu'ils seront affich�s quand le terminal les recevra. On l'appelle parfois "Contr�les d'affichage" ou "Moniteur". Si vous faites ceci, l'affichage aura l'air l�g�rement dans le d�sordre puisque les s�quences d'�chappement, qui commencent toutes par le caract�re de contr�le ESC (escape, �chappement), ne seront plus ex�cut�es. Les mots qui devraient appara�tre en haut ou en bas de l'�cran appara�tront � d'autres endroits. Les s�quences d'�chappement pour repositionner le curseur s'afficheront sur l'�cran mais le curseur ne se d�placera pas vers la destination indiqu�e par la s�quence d'�chappement.
Puisque qu'il n'y pas assez de codes de contr�le pour tout faire (et pour une raison ou pour une autre, ils ne sont pas tous utilis�s), on utilise de nombreuses s�quences d'�chappement. Elles sont constitu�es du caract�re de contr�le d'�chappement (ESC) suivi d'une s�quence de caract�res ordinaires. En recevant un caract�re d'�chappement, le terminal examine les caract�res suivants pour interpr�ter la s�quence et ex�cuter la commande voulue par l'ordinateur. Une fois que la fin d'une s�quence valide est reconnue, les caract�res suivants s'affichent simplement � l'�cran (sauf s'il s'agit de codes de contr�le ou de s�quences d'�chappement suppl�mentaires). Certaines s�quences d'�chappement peuvent prendre des param�tres (ou arguments) comme les coordonn�es �cran pour d�placer le curseur. Les param�tres font partie de la s�quence d'�chappement. Une liste des s�quences d'�chappement se trouve sur le Web pour certains terminaux, mais c'est un peu brutal.
Une liste des s�quences d'�chappement pour votre terminal devrait se trouver dans le "manuel du programmeur" de votre terminal. � part pour de tr�s vieux terminaux, il devrait y avoir deux ou trois cents s�quences. Si vous n'avez pas de manuel, ce n'est pas facile de les trouver. Certaines s�quences sont disponibles sur Internet. Un lien possible est liste des s�quences d'�chappement. En cherchant une s�quence sur Internet (comme ESC[5m) vous pouvez tomber sur une longue liste.
Une autre fa�on de d�terminer certaines s�quences est de trouver la section termcap (terminfo) du terminal et de la d�coder mentalement. Voyez terminfo et termcap (d�tails) dans ce document et/ou le manuel termcap sur Internet. Malheureusement, la section termcap (terminfo) d'un terminal ne liste souvent pas toutes les s�quences d'�chappement disponibles sur le terminal, mais heureusement, les plus importantes sont en g�n�ral pr�sentes.
Les terminaux poss�dent diverses m�thodes pour g�n�rer des attributs de caract�res tels que gras, vid�o inverse, soulignement, etc. L'utilisateur ne devrait pas s'inqui�ter de la mani�re dont c'est g�r�, sauf que cela peut poser des probl�mes pour certains vieux terminaux et il y a quelquefois une option � ce sujet dans le menu de configuration des terminaux plus r�cents.
La m�thode des cookies magiques (magic cookie) est d�pass�e. C'est la m�thode la plus simple (et la pire) pour d�finir des attributs : l'utilisation d'un octet particulier pour d�marrer un attribut et un autre pour indiquer la fin de cet attribut. Par exemple, un octet magique "d�marrer le soulignement" est plac� juste devant le premier mot � souligner. Ces octets suppl�mentaires sont plac�s dans la m�moire de la page �cran, comme les octets pour les caract�res qui s'affichent normalement. Ceci peut cependant fausser le d�compte du nombre de caract�res par ligne puisque les caract�res de cookies magiques non imprimables sont m�lang�s avec les autres caract�res imprimables. Ceci peut dans certains cas poser des probl�mes.
Une m�thode plus efficace, qui utilise plus de m�moire, est d'associer un caract�re d'attribut (ou un demi-caract�re, etc.) � chaque caract�re affich�. Cette m�thode est utilis�e par les cartes vid�o PC (pour le texte) pour les moniteurs PC courants.
Bien que le terminal monochrome courant ne soit pas un terminal couleur, il peut avoir un affichage en "couleur" fixe autre que blanc comme vert ou ambre. Tous les terminaux poss�dent le noir (faisceau d'�lectrons �teint = luminosit� nulle). Un v�ritable terminal couleur peut modifier la couleur du texte et du fond avec plusieurs couleurs diff�rentes alors qu'un terminal monochrome ne peut modifier que la luminosit� d'une couleur donn�e.
Cependant, changer la luminosit�, etc. offre bien des possibilit�s. Par exemple, un terminal noir et blanc (monochrome) peut avoir du blanc, du gris et du noir en variant la luminosit�. Certains mots peuvent �tre en noir sur un fond l�g�rement gris tandis que d'autres sont mis en valeur par du noir sur fond blanc. En plus il y a du blanc sur noir, du soulignement et du clignotement.
La couleur fonctionne comme la couleur sur un moniteur d'ordinateur ou un �cran de t�l�vision. Le tube poss�de trois couleurs de points, chacune �tant contr�l�e par son propre faisceau d'�lectrons (il y a trois faisceaux). Le monochrome a par d�finition une meilleure r�solution puisqu'il ne d�pend pas de points fix�s en permanence � l'�cran. Pour les terminaux texte la seule utilisation de la couleur permet de diff�rencier le texte et cet avantage ne vaut pas toujours le co�t d'une r�solution moins bonne. Le monochrome peut donc �tre meilleur puisqu'il est aussi moins cher.
Pour les sessions doubles, le terminal poss�de deux ports s�rie de statut �gal. Chaque port est connect� au port s�rie d'un ordinateur diff�rent. Ainsi on peut se logger sur deux ordinateurs diff�rents, chaque session s'affichant dans une fen�tre de l'�cran s�par� en deux. Autrement, chaque session peut s'ex�cuter en plein �cran et on utilise une touche "rapide" (hot key) pour acc�der directement � une session (ou une m�me touche pour basculer). On pourrait aussi se connecter sur deux ports s�rie diff�rents sur le m�me ordinateur et se logger deux fois (de mani�re identique aux "terminaux virtuels" sur la console). Le programme "screen" pourra faire tourner sur n'importe quel terminal (session unique) reli� � un ordinateur unique deux "sessions" ou plus.
Beaucoup de terminaux poss�dent un connecteur � l'arri�re pour un tel port. Il peut s'appeler "Aux" ou "Printer", etc. Certains ports d'imprimantes sont destin�s aux imprimantes parall�le alors que d'autres sont destin�s aux imprimantes s�rie. Si une imprimante est connect�e au port imprimante ou auxiliaire, alors l'appui sur certaines touches imprime l'�cran. On peut aussi faire imprimer tout ce qui s'affiche � l'�cran. Si le port est un port auxiliaire, on peut le connecter � un autre ordinateur et avoir des sessions doubles comme ci-dessus. Cependant, la m�moire vid�o � l'int�rieur du terminal peut ne pas retenir les deux sessions et vous pouvez avoir besoin de rafra�chir l'�cran en basculant sur l'autre session. Il n'y aura peut-�tre pas de touche rapide non plus mais on pourra peut-�tre programmer une touche de fonction pour accomplir cette t�che. Il existe de nombreuses combinaisons de touches et de s�quences d'�chappement pour contr�ler un tel port. Voyez �chappement de l'imprimante.
Il y a un programme appel� vtprint
qui est fait pour envoyer un travail
d'impression � votre terminal en vue de l'imprimer sur une imprimante reli�e
au terminal. Sa page Web est
http://people.qualcomm.com/garrett/vtprint
. Il est aussi inclus
(en 1998) dans la distribution Debian de Linux. xprt
(aussi dans Debian)
semble faire une chose identique, mais seulement pour les terminaux X Window
??
Beaucoup de terminaux permettent le stockage de plus d'une page dans leur m�moire vid�o. Quelquefois la taille de la page est la m�me que celle de l'�cran, mais elle est parfois plus grande, ce qui fait que le d�filement r�v�lera les parties invisibles de la page. Quand quelqu'un regarde un �cran, il peut y avoir du texte cach� sur la m�me page au-dessus ou en dessous de l'affichage. En plus, s'il y a plus d'une seule page, il peut y avoir du texte cach� sur ces autres pages. Une utilisation possible de ces pages concerne les terminaux qui supportent les sessions doubles. Chaque session peut avoir sa propre page et on peut basculer de l'une � l'autre simplement.
M�me si vous avez un terminal � page unique avec la taille de la page �gale � ce qui est affich� sur l'�cran, vous verrez encore d'autres pages d'un fichier (etc.) tant que l'h�te envoie des donn�es au terminal. L'un des avantages de stocker des pages suppl�mentaires dans la m�moire du terminal est que vous pouvez y acc�der instantan�ment sans attendre une seconde ou presque qu'elles soient transmises depuis l'h�te.
Les pages multiples sont support�es par ncurses. Faites-moi savoir si vous en connaissez. Il y a un programme commercial appel� "Multiscreen" qui les supporte mais il n'est s�rement pas pour Linux ?? Il parait que Multiscreen fait partie de SCO et fait quelque chose dans le genre des terminaux virtuels sur une console PC Linux. Le programme Linux "screen" fait semblant d'avoir des pages multiples mais elles sont stock�es sur l'ordinateur et vous ne pouvez avoir qu'une fen�tre-page pour chaque programme en cours.
Un jeu de caract�res est normalement repr�sent� par une liste (ou table ou tableau) de caract�res accompagn�e du code d'octet assign� � chaque caract�re. Les codes d'un octet vont de 0 � 255 (00 � FF en hexad�cimal). Dans MS-DOS, les tables de jeux de caract�res sont appel�es "pages de code". Vous devriez examiner une telle table si vous n'�tes pas familier avec celles-ci. Elles sont parfois incluses dans les manuels d'imprimantes et de terminaux mais peuvent �tre difficiles � trouver.
L'ASCII est l'un des jeux de caract�res les plus courants utilis�s sur les terminaux texte. C'est un code sur 7 bits mais qui peut �tre converti en 8 bits si le premier bit (bit de haut rang) est toujours positionn� � 0. D'autres jeux de caract�res sont en g�n�ral disponibles (sauf sur de tr�s vieux terminaux o� le seul choix est l'ASCII). La premi�re moiti� de la plupart des jeux de caract�res sont les caract�res ASCII traditionnels et la deuxi�me moiti� (les caract�res avec le bit de haut rang mis � 1) appartiennent � une grande vari�t� de jeux de caract�res. Les jeux de caract�res sont souvent des normes ISO. Pour obtenir des jeux de caract�res sp�cialis�s sur un terminal, vous devrez certainement t�l�charger une police logicielle pour ce jeu de caract�res dans la m�moire du terminal.
� c�t� de l'ASCII, il y a d'autres jeux de caract�res courants, tous en 8 bits. CP est l'abr�viation des jeux de caract�res de page de codes (Code Page) invent�s par IBM : CP-437 (ECS DOS), CP-850 (Latin 1 multilingue -- pas le m�me que ISO Latin-1), ISO-8859-1 (Latin-1), ANSI (d�riv� de Latin-1). MS Windows utilise ANSI alors qu'Internet utilise souvent Latin-1. Il y a plusieurs jeux de caract�res ISO-8859 en plus de Latin-1. Ceux-ci comprennent le grec (-7), l'arabe (-6), l'Europe de l'Est (-2) et le russe (-5). Il y en a bien d'autres. Par exemple, KOI8-R est plus souvent utilis� pour le russe que ISO-8859-5. Unicode est un jeu de caract�res tr�s grand dans lequel chaque caract�re est repr�sent� sur deux octets au lieu d'un seul.
Voici plus d'informations sur les ensembles de caract�res :
Une fois que vous aurez le nom (ou le num�ro) du jeu de caract�res qui vous int�resse, vous pouvez chercher plus d'informations dessus sur Internet.
La plupart des terminaux fabriqu�s apr�s le milieu des ann�es 1980 peuvent
accepter des polices logicielles t�l�charg�es. Ceci veut dire qu'ils peuvent
afficher quasiment n'importe quel jeu de caract�res � condition que vous
trouviez la police logicielle pour celui-ci. Si vous ne pouvez pas trouver la
police logicielle n�cessaire, vous pouvez toujours cr�er la v�tre. Un �diteur
de polices libre pour effectuer ceci s'appelle BitFontEdit (�crit par
l'auteur de ce document) et se trouvait (en 1998) �
Europe :
http:/www.funet.fi/pub/culture/russian/comp/cyril-term/
Am�rique du Nord :
ftp://cs.utk.edu/pub/shuford/BitFontEdit.tar.gz
Les claviers des terminaux ont souvent un certain nombre de touches qu'on ne trouve pas sur un clavier de PC. Peu (ou pas du tout) de terminaux actuels auront toutes ces touches et la plupart auront des touches suppl�mentaires qui ne sont pas list�es ici. Certains d'entre eux poss�dent un grand nombre de touches � usage sp�cial comme les terminaux faits pour les caisses enregistreuses. Il y a souvent bien plus de significations pour les touches que ce qui est d�crit ici puisque ces touches ont souvent une signification �tendue quand on les utilise avec d'autres touches (comme les touches shift et control).
Puisqu'un PC poss�de un �cran et un clavier (comme un terminal) mais poss�de aussi bien plus de puissance de calcul, il est facile d'utiliser une partie de cette puissance de calcul pour que le PC se comporte comme un terminal texte. Voici un type d'�mulation de terminal. Un autre type d'�mulation de terminal est de configurer un vrai terminal pour qu'il �mule un terminal de mod�le ou de marque diff�rents. Pour ce faire, s�lectionnez l'�mulation d�sir�e (que le jargon Wyse appelle "personnalit�") � partir du menu de param�trage du terminal. Cette section parle du premier type d'�mulation : l'�mulation d'un terminal sur un PC.
Les logiciels d'�mulation sont disponibles pour MS Windows et sont int�gr�s dans les versions r�centes de MS Windows. La plupart des logiciels Linux ne peuvent �muler que des VT100, VT102 ou VT100/ANSI. Si vous en trouvez d'autres, dites-le moi. Puisque la plupart des PC poss�dent des moniteurs couleur mais que les VT100 et VT102 ont �t� faits pour des terminaux monochromes, l'�mulation ajoute en g�n�ral des possibilit�s de gestion de couleurs (et un choix de couleurs). Parfois l'�mulation n'est pas parfaite � 100 % mais ceci ne cr�e en g�n�ral que peu de probl�mes. Pour utiliser un Macintosh pour �muler un terminal, voyez le mini-Howto : Mac-Terminal.
Certaines personnes ont pens�, de mani�re incorrecte, qu'ils pouvaient faire un �mulateur sur la console Linux (le moniteur) en positionnant la variable d'environnement TERM sur le type de terminal qu'elles aimeraient �muler. Ceci ne fonctionne pas. La valeur de TERM ne fait qu'indiquer � l'application le terminal que vous utilisez. Ainsi elle n'a pas besoin de vous le demander directement. Si vous �tes sur le moniteur du PC, c'est un terminal de type "Linux" et vous ne pouvez rien y faire. Vous devez donc positionner TERM � "Linux".
Si vous mettez autre chose, vous racontez des bobards � votre application. En cons�quence, elles interpr�teront certaines s�quences d'�chappement provenant de la console de mani�re incorrecte, ce qui donnera une interface corrompue. Puisque la console Linux se comporte presque comme un terminal vt100, elle pourrait encore fonctionner correctement si vous indiquiez que c'est un vt100 (ou tout autre terminal qui ressemble � un vt100). Cela doit marcher la plupart du temps, mais il suffit d'une fois pour qu'il y ait une erreur quand vous editez ou equivalent.
Un programme d'�mulation est souvent coupl� � un programme d'appel par modem
(comme Minicom, Seyon ou Kermit) pour que l'on puisse (par exemple) appeler
par t�l�phone des biblioth�ques publiques pour utiliser leurs catalogues et
index (ou m�me lire des articles de magazine). Seyon ne s'utilise qu'avec X
Window et peut �muler des terminaux Tektronix 4014. Des �mulateurs existent
pour DOS comme telix
et procomm
et fonctionnent aussi bien. Les
terminaux �mul�s sont souvent les vieux VT100, VT102 ou ANSI (comme VT100).
Xterm (obsol�te ??) peut fonctionner sous X Window et permet d'�muler un
VT102, VT220 ou Tektronix 4014. Il y a aussi une �mulation xterm (bien qu'il
n'y ait pas de terminal physiques qui s'appelle "xterm"). Si vous n'avez pas
besoin de l'�mulation Tektronix 4014 (un terminal avec des vecteurs
graphiques ; voyez
terminaux graphiques)
vous pouvez utiliser eterm
. Les pr�d�cesseurs de eterm
sont
rxvt
et xvt
. eterm
supporte les pixmaps en fond de fen�tre.
Pour les alphabets diff�rents de Latin, kterm permet l'�mulation de terminal Kanji (ou tout autre alphabet non Latin) alors que xcin est fait pour le chinois. Il y a aussi l'�mulateur 9term. Il semble que ce soit plus qu'un simple �mulateur puisqu'il poss�de un �diteur int�gr� et des barres de d�filement. Il a �t� fait pour Plan 9, un syst�me d'exploitation � la Unix de AT&T.
Sauf si vous utilisez X Window avec un grand affichage, il est plus agr�able d'utiliser un vrai terminal que de l'�muler. Il co�te en g�n�ral moins cher, a une meilleur r�solution pour le texte et n'a pas de lecteurs de disques qui font des bruits aga�ants.
Pour la s�rie des terminaux VT il y a un programme de test : vttest
pour
aider � d�terminer si un terminal se comporte correctement comme un vt53,
vt100, vt102, vt220, vt320, vt420, etc. Il n'y a pas de documentation mais il
a des menus et est facile � utiliser. Pour le compiler lancez le script
configure et ensuite tapez "make". On peut le charger � :
ftp://ftp.clark/net:/pub/dickey/vttest/. Un autre site de chargement
est :
http://metalab.unc.edu/pub/Linux/utils/console/.
La console d'un syst�me PC sous Linux est le moniteur de l'ordinateur. Il �mule un terminal de type "Linux". Il n'y a pas moyen (sauf si vous voulez passer des jours � r��crire le code du noyau) pour le faire �muler autre chose. Positionner la variable d'environnement TERM � un type de terminal diff�rent de "Linux" n'aboutira pas � l'�mulation de cet autre terminal. Vous n'obtiendrez qu'une interface corrompue puisque vous avez d�clar� faussement (par l'interm�diaire de la variable TERM) que votre "terminal" est d'un type diff�rent de ce qu'il est. Voyez la section n'utilisez pas TERM pour l'�mulation.
L'�mulation "Linux" est souple et poss�de des possibilit�s qui vont bien au-del� de celles du terminal vt102 qu'il �tait cens� �muler. Celles-ci comprennent la possibilit� d'utiliser des fontes personnalis�es et de reconfigurer facilement le clavier (sans modifier le code source et recompiler le noyau comme il faut le faire dans le cas d'un terminal r�el). Ces possibilit�s suppl�mentaires se trouvent dans le logiciel de pilotage de la console et non dans le logiciel d'�mulation mais le r�sultat fait qu'on dirait que ces possibilit�s font partie de l'�mulation.
Beaucoup de commandes existent (voyez le HOWTO Keyboard-and-Console) pour utiliser ces possibilit�s suppl�mentaires. Les vrais terminaux, qui n'utilisent ni codes de balayages (scancodes) ni carte VGA, ne peuvent malheureusement pas utiliser la plupart de ces possibilit�s. On peut recompiler Linux pour qu'un terminal re�oive les messages qui vont normalement sur la console. Voyez transformer un terminal en console.
Le contr�le de flux (= prise de contact (handshaking) = ralentissement) permet d'emp�cher un flux d'octets trop rapide de d�passer un terminal, un ordinateur, un modem ou un autre p�riph�rique. Le d�passement est le fait qu'un p�riph�rique ne puisse pas traiter ce qu'il re�oit assez rapidement et ainsi perd des octets et/ou fait d'autres erreurs s�rieuses. Ce que fait le contr�le de flux est d'arr�ter le flux d'octets jusqu'� ce que le terminal (par exemple) soit pr�t � recevoir des octets suppl�mentaires. Le contr�le de flux envoie un signal pour arr�ter le flux dans la direction oppos�e au flux des donn�es qu'il veut arr�ter. Le contr�le de flux doit �tre lanc� � la fois sur le terminal et sur l'ordinateur.
Il y a deux types de contr�le de flux : mat�riel et logiciel (Xon/Xoff ou DC1/DC3). Le contr�le de flux mat�riel utilise des fils de signaux d�di�s comme RTS/CTS ou DTR/DSR alors que le contr�le de flux logiciel se signale en envoyant les octets de contr�le DC1 ou DC3 dans les fils de donn�es normaux. Pour le contr�le de flux mat�riel, le c�ble doit �tre c�bl� correctement.
Le flux des octets de donn�es dans le c�ble entre deux ports s�rie est bidirectionnel, il y a donc deux flux (et deux fils) diff�rents � consid�rer :
Vous pouvez vous demander : "Pourquoi ne pas envoyer les donn�es � une vitesse suffisamment petite pour que le p�riph�rique ne soit pas d�pass� et que le contr�le de flux ne soit ainsi plus n�cessaire ?" Ceci est possible mais c'est en g�n�ral bien plus lent que d'envoyer les donn�es plus rapidement et d'utiliser le contr�le de flux. Une raison � ceci est qu'on ne peut pas positionner la vitesse du port s�rie � n'importe quelle vitesse comme 14.500, puisqu'un nombre limit� de choix est disponible. Le meilleur choix est de s�lectionner une vitesse l�g�rement plus �lev�e que ce que peut soutenir le p�riph�rique et d'utiliser ensuite le contr�le de flux pour que les choses fonctionnent correctement.
Si on d�cide de ne pas utiliser le contr�le de flux, la vitesse doit alors �tre suffisamment basse pour pallier � la pire des situations. Pour un terminal, cela arrive quand on envoie des s�quences d'�chappement pour effectuer des t�ches complexes qui prennent plus de temps qu'� l'accoutum�e. Dans le cas d'un modem (avec la compression de donn�es mais pas de contr�le de flux) la vitesse de l'ordinateur au modem doit �tre suffisamment basse pour que cette m�me vitesse soit utilisable sur la ligne t�l�phonique, puisque dans le pire des cas les donn�es sont al�atoires et ne peuvent �tre compress�es. Si on ne pouvait pas utiliser de contr�le de flux, la vitesse (avec la compression de donn�es activ�e) ne serait pas plus rapide que si on n'utilisait pas de compression du tout.
Les buffers (m�moires tampons) aident � g�rer les situations catastrophes de courte dur�e. Le tampon stocke les octets qui arrivent trop rapidement pour �tre trait�s tout d'un coup, et les garde pour les traiter plus tard.
Une autre mani�re de g�rer une situation "catastrophe" (sans utiliser de contr�le de flux ni de tampon) est d'ajouter un groupe de nulls (octets de valeur z�ro) aux s�quences d'�chappement. Quelquefois on utilise des DEL � la place, � condition qu'ils n'aient pas d'autre fonction. Voyez reconna�tre DEL.
La s�quence d'�chappement permet au terminal de commencer � faire quelque
chose, et pendant que le terminal est occup� � le faire, il re�oit une
poign�e de nulls qu'il ignore. Quand il re�oit le dernier null, il a termin�
sa t�che et est pr�t pour la commande suivante. C'est ce qu'on appelle le
remplissage de z�ros (null padding). Ces nulls �taient autrefois appel�s des
"caract�res de remplissage". Ces nulls sont ajout�s simplement pour "perdre"
du temps, mais ce n'est pas tout � fait perdu puisque le terminal est en
g�n�ral occup� � faire autre chose pendant que les nulls sont re�us. On
utilisait beaucoup cette m�thode dans le pass� avant que le contr�le de flux
ne devienne populaire. Pour �tre efficace, il fallait ajouter le nombre exact
de nulls et trouver la bonne valeur est difficile. On le faisait souvent par
essais successifs et t�tonnements puisque les manuels de terminaux n'�taient
pas de grand secours. Si le contr�le de flux ne fonctionne pas correctement
ou n'est pas impl�ment�, le remplissage est une solution. Certaines options
de la commande stty
concernent le remplissage.
On peut se demander comment le d�bordement est possible sur un port s�rie puisqu'� la fois les ports s�rie d'envoi et de r�ception servant � la transmission d'octets de donn�es sont param�tr�s pour la m�me vitesse (en bits/s) comme 19200. La raison est que bien que l'�lectronique du port s�rie r�cepteur peut g�rer la vitesse du flux arrivant, le mat�riel/logiciel qui prend et traite les octets du port s�rie ne peut pas toujours se d�brouiller avec une vitesse de flux �lev�e.
L'une des causes de ceci est que le tampon mat�riel du port s�rie est assez petit. Les anciens ports s�rie avaient une taille de tampon mat�riel d'un octet seulement (� l'int�rieur de la puce UART). Si cet unique octet de donn�es re�u dans le tampon n'est pas enlev� (pris) par des instructions CPU avant que l'octet suivant n'arrive, cet octet est perdu (le tampon est d�bord�). Les UART r�cents, par exemple la plupart des 16550A, poss�dent des tampons de 16 octets (mais peuvent �tre param�tr�s pour �muler un tampon d'un octet) et sont moins susceptibles d'�tre d�bord�s. On peut le param�trer pour envoyer une interruption quand le nombre d'octets dans son tampon atteint 1, 4, 8 ou 14 octets. C'est le travail d'une autre puce dans l'ordinateur (g�n�ralement la puce principale CPU pour un ordinateur) de retirer ces octets entrants de ce petit tampon mat�riel et de les traiter (ainsi que d'effectuer d'autres t�ches).
Quand le contenu de ce petit tampon mat�riel de r�ception atteint la limite sp�cifi�e (un octet pour les vieux UART) une interruption est lev�e. L'ordinateur interrompt alors ce qu'il �tait en train de faire et une routine fait une v�rification pour d�terminer ce qui vient de se passer. Il d�termine finalement qu'il doit retirer un octet (ou plusieurs) du tampon du port s�rie. Il prend cet (ces) octet(s) et les met dans un tampon plus grand (un autre tampon pour le port s�rie) que le noyau maintient dans la m�moire principale. Pour le tampon de transmission, le mat�riel s�rie g�n�re une interruption quand le tampon est vide (ou presque vide) pour dire � la CPU de mettre quelques octets suppl�mentaires dans ce tampon afin de les envoyer.
Les terminaux poss�dent aussi des ports s�rie et des tampons similaires � ceux de l'ordinateur. Puisque le flux de donn�es des octets vers le terminal est en g�n�ral plus grand que le flux dans la direction oppos�e du clavier vers l'ordinateur h�te, le terminal a plus de chance de souffrir du d�bordement. Bien s�r, si vous utilisez un ordinateur comme terminal (par �mulation), il est � son tour sujet au d�bordement.
Les situations risqu�es o� le d�bordement est tr�s probable sont : 1. quand un autre processus a d�sactiv� les interruptions (pour un ordinateur), 2. quand le tampon du port s�rie dans la m�moire principale (ou dans celle du terminal) est pr�te � d�border.
Quand le r�cepteur est sur le point d'�tre d�bord� par les octets entrants, il envoie un signal � l'exp�diteur pour arr�ter l'envoi. C'est le contr�le de flux et les signaux de contr�le de flux sont toujours envoy�s dans la direction oppos�e au flux de donn�es qu'ils contr�lent (bien que ce ne soit pas dans le m�me canal ou le m�me fil). Ce signal peut �tre soit un caract�re de contr�le (^S = DC3 = Xoff) envoy� comme un octet de donn�es ordinaire sur la ligne de donn�es (signalement dans la bande), soit une transition de tension du positif au n�gatif dans le fil de signal dtr-vers-cts (ou autre ; signalement hors-bande). L'utilisation de Xoff est appel�e "contr�le de flux logiciel" et l'utilisation du saut de tension dans un fil de signal d�di� (� l'int�rieur du c�ble) est appel�e contr�le de flux mat�riel.
Avec les terminaux, le cas le plus commun "d'arret d'envoi", est quand le terminal ne peut pas suivre avec les caract�res qui lui sont envoy�s et qui en conclut par un "arret" du PC. Un autre cas, est quand quelqu'un presse control-S. Un autre cas un peu moin commun, est l'oppos�, quand le PC ne peut plus suivre votre vitesse de frappe et dit au terminal d'arr�ter l'envoi. Le terminal "bloque" le clavier et un message ou une lumi�re devrait vous informer que le clavier est bloqu�. Tout ce que vous tapez sur un clavier bloqu� est ignor�.
Le terme "bloqu�" est aussi quelque fois utilis� pous les cas o� l'on dit � l'ordinateur d'arr�ter d'envoyer � un terminal. Le clavier n'est pas bloqu�, afin que tout ce que vous tapez soit envoy� � l'ordinateur, mais puisque l'ordinateur ne peut rien vous renvoyer, les caract�res que vous tapez ne s'affichent pas sur l'�cran et il peut sembler que le clavier est bloqu�. Le d�filement est bloqu� (scroll lock) mais le clavier n'y est pas.
Quand le r�cepteur a rattrap� son retard dans le traitement et est pr�t � recevoir plus d'octets de donn�es il envoie un signal � l'envoyeur. Pour le contr�le de flux logiciel ce signal est le caract�re de contr�le ^Q = DC1 = Xon qui est envoy� sur la ligne de donn�es normale. Pour le contr�le de flux mat�riel la tension dans une ligne de signal passe de n�gative (ni�e) � positive (affirm�e). Si on dit � un terminal de reprendre la transmission le clavier est alors d�bloqu� et pr�t � �tre utilis�.
Certains terminaux anciens n'offrent pas de contr�le de flux mat�riel alors que d'autres offraient un assortiment vari� de broches diverses sur le port s�rie pour le faire. Pour une liste des differentes borches, aller voir Brochage standard d'un cable null-modem. La broche la plus en vogue actuellement semble �tre la broche DTR (ou les broches DTR et DSR ensemble).
Les PC Linux utilisent RTS/CTS mais le contr�le de flux DTR/DSR (utilis� par certains terminaux) se comporte de la m�me mani�re. Le contr�le de flux DTR (dans une seule direction et aussi utilis� par certains terminaux) n'est que la partie DTR du contr�le de flux DTR/DSR.
RTS/CTS utilise les broches RTS et CTS sur le connecteur s�rie (EIA-232). RTS veut dire "Request To Send" (demande d'envoyer). Quand cette broche reste en position haute (tension positive) sur le r�cepteur cela veut dire : continuez de m'envoyer des donn�es. Si RTS passe en position basse (la tension devient n�gative), cela nie "demande d'envoyer", ce qui veut dire : arr�tez d'envoyer. Quand le r�cepteur est pr�t � recevoir plus de donn�es, il relance RTS, demandant � l'autre c�t� de reprendre l'envoi. Pour les ordinateurs et les terminaux (tous les deux des �quipements terminaux) la broche RTS envoie le signal de contr�le de flux � la broche CTS (Clear To Send, pr�t � envoyer) de l'autre c�t� du c�ble. C'est-�-dire que la broche RTS � un bout du c�ble est reli�e � la broche CTS � l'autre bout du c�ble.
Pour un modem (�quipement de connexion) le principe est diff�rent puisque la broche RTS du modem re�oit le signal et sa broche CTS l'envoie. Alors que ceci peut sembler d�routant, il y a des raisons historiques correctes pour l'expliquer, raisons qui sont trop compliqu�es pour en discuter ici.
Les terminaux disposent en g�n�ral du contr�le de flux DTR ou DTR/DSR. Le contr�le de flux DTR est le m�me que le contr�le de flux DTR/DSR mais il est unidirectionnel et la broche DSR n'est pas utilis�e. En ce qui concerne le contr�le de flux DTR/DSR sur un terminal, le signal DTR est comme le signal envoy� de la broche RTS, et la broche DSR est simplement comme la broche CTS.
Certains terminaux n'utilisent que le contr�le de flux DTR. C'est un contr�le de flux unidirectionnel uniquement pour emp�cher le terminal d'�tre d�pass�. Il ne prot�ge pas l'ordinateur de quelqu'un qui tape trop vite pour que l'ordinateur puisse g�rer la situation. Dans un c�ble null modem classique la broche DTR du terminal est reli�e � la broche DSR de l'ordinateur. Linux, par contre, ne supporte pas le contr�le de flux DTR/DSR (bien que des pilotes pour des cartes multiports peuvent supporter le contr�le de flux DTR/DSR). Un moyen de contourner ce probl�me est simplement de relier la broche DTR � la broche CTS sur l'ordinateur et d'activer le contr�le de flux RTS/CTS (stty crtscts). Le fait que ce soit unidirectionnel ne changera rien tant que l'h�te n'est pas d�pass� par votre vitesse de frappe et ne l�che RTS en une vaine tentative pour bloquer votre clavier. Voyez blocage du clavier. Pour obtenir le contr�le de flux DTR/DSR (si votre terminal supporte ce type de contr�le de flux bidirectionnel) vous faites ce qui est d�crit ci-dessus. Mais vous connectez aussi la broche DSR sur le terminal � la broche RTS sur l'ordinateur. Vous �tes alors prot�g� si vous tapez trop rapidement.
Ce qui est d�routant est que l'utilisation d'origine de RTS veut dire � peu pr�s le contraire de l'explication pr�c�dente ci-dessus. La signification d'origine est : je demande � vous envoyer (I Request To Send to you). Cette requ�te �tait destin�e � �tre envoy�e d'un terminal (ou d'un ordinateur) vers un modem qui, s'il d�cidait d'accorder la requ�te, renvoyait un CTS affirmatif � partir de sa broche CTS vers la broche CTS de l'ordinateur : vous �tes autoris� � m'envoyer (You are Cleared To Send to me). Notez qu'au contraire du contr�le de flux RTS/CTS bidirectionnel du modem, ceci ne prot�ge le flux que dans une direction : de l'ordinateur (ou du terminal) vers le modem.
Pour de vieux terminaux, RTS peut avoir cette signification et devient positif quand le terminal doit envoyer des donn�es. L'utilisation ci-dessus est une forme de contr�le de flux puisque si le modem veut que l'ordinateur arr�te d'envoyer il l�che CTS (connect� au CTS de l'ordinateur) et l'ordinateur arr�te d'envoyer.
Les vieux terminaux � sortie papier peuvent avoir une broche de canal invers� (comme la broche 19) qui se comporte comme la broche RTS dans le contr�le de flux RTS/CTS. Cette broche passera aussi en n�gatif s'il n'y a plus de papier ou de ruban. Il est souvent possible de relier cette broche � la broche CTS de l'ordinateur h�te. Il peut y avoir un petit interrupteur pour positionner la polarit� de ce signal.
Certains pensent que le contr�le de flux mat�riel est fait par le mat�riel mais (sauf si vous utilisez une carte s�rie intelligente avec plusieurs ports s�rie) c'est en r�alit� votre syst�me d'exploitation qui s'en charge. Les puces UART et le mat�riel associ� ne connaissent en g�n�ral rien du contr�le de flux mat�riel. Quand un signal de contr�le de flux mat�riel est re�u, le fil du signal inverse la polarit�. Ce changement d'�tat est enregistr� dans un registre de port s�rie qui est v�rifi� par le pilote s�rie avant de mettre les octets dans les tampons materiels de 16 octets. Si le fil du control de flux dit "stop", il n'y a plus d'octets ajout�s et le flux sortant des lignes s�ries s'arrete.
Il y'a un autre moyen qui aurait pu �tre implementer depuis que la polarit� s'inverse, le materiel aurait pu �tre configur� pour envoyer un signal �l�ctrique d'interruption au processeur. Alors le processeur arreterait ce qu'il �tait en train de faire, se brancherait a un sous-programme de service du pilote s�rie, verifierait les registres dans lesquels le port serie a laiss� des traces pour trouver ce qui s'est pass�, et fais un rapport, pour ne pas red�marrer le flux apres que le sous programme de service soit quitt�. Cela doit �tre un peu plus efficace, mais il semble que Linux n'agisse pas comme ca. A mon avis.
Noter qu'avec l'une ou l'autre des methodes, le flux d'octets s'arrette quasiment instantanement. Cependant tous les octets (jusqu'� 16) qui �taient d�j� dans le tampon de transmission mat�riel du port s�rie seront encore transmis. Utiliser un control de flux logiciel requiert que chaque octet arrivant soit verifi� pour voir si c'est un octet "eteint". Ces octets sont retard�s en passant � travers le tampon de r�ception de 16 octets. Si l'octet "�teint" �tait le premier octet dans ce tampon, il pourrait y avoir une attente le temps que 15 octets soient re�us. Alors les 16 octets lus seraient obtenus et l'octet "�teint" trouv�. Cette attente supplementaire n'arrive pas avec un control de flux materiel.
Ceci est aussi du contr�le de flux mat�riel et n�cessite un pilote de p�riph�rique qui sait le traiter. Les octets sont envoy�s par paquets (gr�ce au port s�rie asynchrone), chaque paquet �tant termin� par un caract�re de contr�le ETX (End of Text, fin de texte). Quand le terminal re�oit un ETX il attend jusqu'� ce qu'il soit pr�t � recevoir le paquet suivant et retourne alors un ACK (Acknowledge, acquittement). Quand l'ordinateur re�oit le ACK, il envoie le paquet suivant. Et ainsi de suite. Ceci n'est pas support� par Linux ?? Certains terminaux HP utilisent la m�me m�thode mais utilisent ENQ au lieux de ETX.
Les cartes multiports permettent de relier plusieurs terminaux (ou modems) � un ordinateur. On peut relier un terminal � son ordinateur h�te soit par une connexion directe par c�ble, soit par un modem, ou encore par l'interm�diaire d'un serveur de terminaux.
On peut acheter des cartes s�rie suppl�mentaires qui poss�dent plusieurs ports s�rie, et qu'on appelle "cartes multiports". Ces cartes ne sont pas d�taill�es dans ce HOWTO mais on en parle beaucoup dans le HOWTO Serial. Une soci�t� qui fait des prix en dessous de la moyenne est ByteRunner.
La mani�re la plus simple de relier un terminal � un ordinateur h�te est par l'interm�diaire d'une connexion directe vers un port s�rie de l'ordinateur. La plupart des PC poss�dent deux ports s�rie, mais la souris en utilise en g�n�ral un. Vous pouvez aussi utiliser quelques infos dans cette section pour connecter un ordinateur a un autre(par le port s�rie). Pour le port EIA-232, vous avez besoin d'un c�ble null modem qui croise les fils de transmission et de r�ception. Si vous voulez faire du contr�le de flux mat�riel, vous utiliserez s�rement la broche DTR (ou les broches DTR et DSR ensemble).
Assurez-vous que vous avez le bon type de c�ble. Un c�ble null modem achet� dans un magasin d'ordinateurs peut �tre bon (s'il est assez long), mais ne fonctionnera probablement pas bien pour le contr�le de flux mat�riel. Ce genre de c�ble peut �tre �tiquet� comme un c�ble pour imprimante s�rie. Voyez ceci pour vous aider � d�terminer si vous devez acheter ou fabriquer votre propre c�ble. Assurez-vous que vous utilisez votre port s�rie, la prise m�le DB25 ou DB9, et non pas votre port parall�le (prise DB25 femelle ou Centronics).
Ces 3 diagrammes sont pour les vrais terminaux textes. Mais vous pouvez les utiliser pour connecter 2 PC si vous remplacer RTS par DTR et CTS par DSR. (N'utilisez pas 4 conducteurs pour PC � PC). Pour les terminaus, si vous n'avez que le contr�le de flux DTR (unidirectionnel), vous pouvez �liminer le fil RTS-vers-DSR. Si vous n'avez pas de contr�le de flux mat�riel, vous pouvez alors aussi �liminer le fil CTS-vers-DTR. Alors, si vous avez deux paires torsad�es, vous pouvez utiliser deux fils pour la masse du signal comme indiqu� � une astuce qui utilise du c�ble en paire torsad�e. Pour un connecteur DB25 sur votre PC, vous avez besoin de :
PC DB25 m�le Terminal DB25 TxD Transmit Data 2 --> 3 RxD Receive Data RxD Receive Data 3 <-- 2 TxD Transmit Data SG Signal Ground 7 --- 7 SG Signal Ground CTS Clear To Send 5 <-- 20 DTR Data Terminal Ready RTS Request To Send 4 --> 6 DSR Data Set Ready
Si vous avez un connecteur DB9 sur votre PC, essayez le sch�ma suivant :
PC DB9 Terminal DB25 RxD Receive Data 2 <-- 2 TxD Transmit Data TxD Transmit Data 3 --> 3 RxD Receive Data SG Signal Ground 5 --- 7 SG Signal Ground CTS Clear To Send 8 <-- 20 DTR Data Terminal Ready RTS Request To Send 7 --> 6 DSR Data Set Ready **
Si vous avec un connecteur DB9 sur tous vos ports s�ries et terminal :
PC DB9 Terminal DB25 RxD Receive Data 2 <-- 3 TxD Transmit Data TxD Transmit Data 3 --> 2 RxD Receive Data SG Signal Ground 5 --- 5 SG Signal Ground CTS Clear To Send 8 <-- 4 DTR Data Terminal Ready RTS Request To Send 7 --> 6 DSR Data Set Ready **
Les sch�mas ci-dessus n'ont pas de lignes de contr�le de modem, soyez donc s�r de donner une option "local" � getty (ce qui est �quivalent � "stty clocal"). De plus si vous avez besoin du contr�le de flux mat�riel il doit �tre activ� du c�t� de votre ordinateur (utilisez le drapeau -h avec agetty) (�quivalent � "stty crtscts").
Les 3 diagrammes suivants montrent des c�bles null modem "standards" complets. Si vous en achetez un, il risque d'�tre c�bl� de cette mani�re. Ils fonctionneront pour les terminaux en utilisant le contr�le de flux logiciel (Xon/Xoff), ou sans contr�le de flux. Cependant, ils ne fonctionnent pas pour le contr�le de flux mat�riel de terminal puisque la plupart des vrais terminaux supportent le contr�le de flux DTR ou DTR/DSR (prise de contact) mais que Linux ne le fait pas.
PC DB25 m�le Terminal DB25 TxD Transmit Data 2 --> 3 RxD Receive Data RxD Receive Data 3 <-- 2 TxD Transmit Data RTS Request To Send 4 --> 5 CTS Clear To Send CTS Clear To Send 5 <-- 4 RTS Request To Send DSR Data Set Ready 6 | DCD Carrier Detect 8 <-- 20 DTR Data Terminal Ready SG Signal Ground 7 --- 7 SG Signal Ground 6 DSR Data Set Ready | DTR Data Terminal Ready 20 --> 8 DCD Carrier Detect
Autrement, voici un c�ble null modem DB9-DB25 (ne fonctionnera pas avec la prise de contact mat�rielle des terminaux ; voir ci-dessus) :
PC DB9 Terminal DB25 RxD Receive Data 2 <-- 2 TxD Transmit Data TxD Transmit Data 3 --> 3 RxD Receive Data 6 DSR Data Set Ready | DTR Data Terminal Ready 4 --> 8 DCD Carrier Detect GND Signal Ground 5 --- 7 GND Signal Ground DCD Carrier Detect 1 | DSR Data Set Ready 6 <-- 20 DTR Data Terminal Ready RTS Request To Send 7 --> 5 CTS Clear To Send CTS Clear To Send 8 <-- 4 RTS Request To Send RI Ring Indicator 9 (pas n�cessaire)
(Oui, les broches 2 et 3 ont vraiment des significations oppos�es dans les connecteurs DB9 et DB25 !)
Voici comment connecter 2 DB9 ensemble en null-modem (mais le flux de control DTR ne marchera pas) :
PC DB9 Terminal DB25 RxD Receive Data 2 <-- 3 TxD Transmit Data TxD Transmit Data 3 --> 2 RxD Receive Data 6 DSR Data Set Ready | DTR Data Terminal Ready 4 --> 1 DCD Carrier Detect GND Signal Ground 5 --- 5 GND Signal Ground DCD Carrier Detect 1 | DSR Data Set Ready 6 <-- 4 DTR Data Terminal Ready RTS Request To Send 7 --> 8 CTS Clear To Send CTS Clear To Send 8 <-- 7 RTS Request To Send RI Ring Indicator 9 (pas n�cessaire)
L'utilisation des deux connexions ci-dessus fournit des signaux de contr�le de modem complets et de m�me nous permettent de positionner "stty -clocal". On doit alors allumer le terminal en premier (pour lancer DTR) avant de pouvoir ouvrir le port de mani�re normale par getty, etc. Mais il risque d'y avoir des probl�mes si vous n'allumez pas le terminal en premier (voyez getty se relance trop rapidement). Pour cette raison, on devrait utiliser "stty clocal" qui est la valeur par d�faut (ignore les lignes de contr�le du modem) et les fils suppl�mentaires dans ces c�bles ne servent alors � rien d'utile.
Dans les jours anciens o� il n'�tait pas si facile d'ignorer les signaux de contr�le du modem, etc., on utilisait "l'astuce" suivante pour les c�bles qui n'avaient pas les fils pour le contr�le de modem : du c�t� ordinateur du connecteur, on reliait RTS et CTS ensemble, et on connectait aussi DSR, DCD et DTR ensemble. De cette mani�re, quand l'ordinateur avait besoin d'un certain signal de prise de contact pour continuer, il l'obtenait (par erreur) de lui-m�me.
Un c�ble de plus de 15 m�tres environ (50 pieds) peut ne pas fonctionner correctement � grande vitesse. Des longueurs bien plus grandes fonctionnent parfois correctement, surtout si la vitesse est basse et/ou le c�ble est de type basse capacitance et/ou l'�lectronique de la partie r�ception est tr�s sensible. On dit que sous certaines conditions id�ales � 9600 bauds, un c�ble de 1000 pieds (300 m�tres) fonctionne correctement. Une mani�re de couvrir de longues distances est d'installer un pilote de ligne pr�s de chaque port s�rie afin de convertir des signaux asym�triques en sym�triques (et inversement) et d'utiliser ensuite du c�blage en paire torsad�e. Mais les pilotes de lignes sont chers.
Si vous voulez faire du contr�le de flux mat�riel (prise de contact) vous aurez certainement besoin de fabriquer votre propre c�ble (ou de le faire faire). Bien s�r, si les connecteurs � chaque extr�mit� d'un c�ble usag� s'enl�vent, vous pouvez le reconnecter. Voyez installation de connecteurs DB. Vous devrez d�terminer si oui ou non le terminal utilise la broche DTR pour cela, et sinon, quelle(s) broche(s) il utilise. Les menus de configuration peuvent vous donner des indices l�-dessus puisqu'il peut y avoir une option pour activer la "prise de contact DTR" (ou le contr�le de flux), ce qui implique bien s�r qu'il utilise la broche DTR. Il peut aussi utiliser la broche DSR. Voyez contr�le de flux mat�riel pour une explication d�taill�e. Des terminaux anciens peuvent ne rien fournir pour faire du contr�le de flux mat�riel.
Un c�ble "droit" normal ne fonctionnera pas sauf si vous l'utilisez comme c�ble d'extension coupl� soit � un c�ble null modem, soit � un adaptateur null modem. Assurez-vous que les connecteurs au bout du c�ble se brancheront dans les connecteurs mat�riels. On peut utiliser du c�ble de t�l�phone qui a au moins 4 conducteurs (et peut-�tre en paire torsad�e). Un c�ble d'ordinateur sp�cial de basse capacitance, blind�, est mieux.
Bien qu'aucun signal EIA-232 ne soit stabilis� pour de la paire torsad�e on peut tenter d'utiliser un c�ble en paire torsad�e. Utilisez une paire pour la transmission et l'autre pour la r�ception. Pour faire ceci connectez le signal de terre � un fil sur chacune de ces deux paires. Une partie seulement du signal de terre passe dans le fil d�sir� mais �a peut aider. � cause de l'inductance plus faible du circuit en paire torsad�e (compar�e au courant de retour de masse par un autre chemin), un peu plus de courant de retour (terre) se massera sur le chemin d�sir� que ce qu'on pourrait attendre des seuls calculs de r�sistances. Ceci est surtout vrai � des fr�quences plus �lev�es puisque l'imp�dance d'induction augmente avec la fr�quence. La courbe rectangulaire du port s�rie contient des harmoniques de haute fr�quence.
La broche 1 (d'une prise DB25) devrait �tre reli�e � la masse du ch�ssis (qui est aussi la masse de la terre) mais sur les ports s�rie �conomiques il peut n'�tre connect� � rien du tout. Un connecteur 9 broches n'est m�me pas reli� � la masse du ch�ssis. La masse du signal est la broche 7 et est en g�n�ral reli�e � la masse du ch�ssis. Cela veut dire qu'une partie du courant du signal passera dans les fils de masse de l'installation �lectrique du b�timent (ind�sirable). Les blindages de c�bles sont sens�s n'�tre mis � la terre qu'� une seule extr�mit� du c�ble, mais il peut �tre mieux de relier les deux extr�mit�s � la terre puisqu'il est mieux d'avoir du courant dans le blindage que dans l'installation �lectrique du b�timent ??
En utilisant une combinaison terminal-modem (sans ordinateur) on peut se connecter � des BBS. Certains BBS (comme free-nets) permettent un acc�s � Internet gr�ce au navigateur texte lynx qui fonctionnera sur les terminaux texte. Ainsi avec un vieux terminal et un modem externe, on peut se connecter � Internet. Si on se connecte � un ordinateur h�te sur lequel on a un compte, on peut parfois y stocker ses fichiers (ou ses t�l�chargements).
Au lieu de relier un terminal (ou un ordinateur �mulant un terminal) directement � un ordinateur h�te en utilisant un c�ble, il peut �tre reli� � l'h�te par l'interm�diaire d'une ligne t�l�phonique (ou d'une liaison sp�cialis�e d�di�e) avec un modem � chaque bout de la ligne. Le terminal (ou l'ordinateur) appellera en g�n�ral un ordinateur h�te avec une ligne t�l�phonique.
La plupart des gens utilisent un PC et un modem pour appeler vers l'ext�rieur. Le PC peut poss�der un terminal reli� � un port s�rie et la personne sur le terminal peut appeler par l'interm�diaire du PC. La connexion d'un vrai terminal directement sur le modem externe est plus difficile car le vrai terminal n'est pas tr�s intelligent et ne donne pas autant de retour � l'utilisateur. Pour appeler � l'ext�rieur, beaucoup de terminaux peuvent stocker un ou plusieurs num�ros de t�l�phone comme des messages qu'on peut leur "param�trer". Ces num�ros sont envoy�s au modem en pressant certaines touches de fonction. Beaucoup de modems peuvent aussi stocker des num�ros de t�l�phone. La s�quence d'initialisation du modem doit pr�c�der le num�ro de t�l�phone. Quande un autre modem r�pond � un appel sortant a l'autre bout de la ligne t�l�phonique, l'ordinateur hote sur ceux modem doit lancer un programme getty pour vous puissiez vous connectez.
Il est courant pour un ordinateur faisant tourner Linux de se faire appeler par t�l�phone. L'appelant obtient une invite de login et se logge. � premi�re vue, il peut sembler �trange qu'un terminal simple (reli� � aucun ordinateur) puisse accepter un appel entrant, mais il le peut. Une des raisons possibles de faire ainsi est d'�conomiser les factures de t�l�phone quand les tarifs ne sont pas sym�triques. Votre terminal doit �tre configur� pour un appel entrant : mettez le modem derri�re votre terminal en mode r�ponse automatique (auto answer, registre S0 mis � 2 r�pondra � la deuxi�me sonnerie). Vous allumez le terminal et le modem avant d'attendre un appel et quand l'appel arrive vous obtenez une invite de login et vous vous loggez.
L'ordinateur h�te qui appelle votre terminal doit faire quelque chose d'inhabituel. Aussit�t que votre modem r�pond, il doit lancer login (getty). Un h�te peut faire ceci en lan�ant le programme Linux "callback", parfois appel� "cb". Le callback (ou rappel) c'est l'ordinateur A qui appelle l'ordinateur B, B raccroche et rappelle A. C'est ce que vous voulez si vous utilisez l'ordinateur A pour �muler un terminal. Dans le cas d'un vrai terminal cette t�che peut �tre trop complexe et par cons�quent l'h�te n'utilise que la partie retour du programme callback. Le fichier de configuration de callback doit �tre configur� correctement sur l'h�te. Callback appelle le terminal et ensuite dit � mgetty de lancer un login sur ce port. Mgetty lui-m�me (au d�but 1998) ne sait g�rer que les appels entrants mais on travaille sur l'incorporation de possibilit�s de rappel automatique et le rendre ainsi capable de g�rer les appels sortants. Au d�but de 1999, cela ne semblait pas avoir �t� r�alis�.
Une utilisation possible est de connecter beaucoup de terminaux (ou des modems) � un r�seau � haut d�bit qui permet la connexion � des ordinateurs h�tes. Bien s�r le serveur de terminaux doit avoir la puissance de calcul et les logiciels pour faire tourner des protocoles r�seau, il ressemble donc � un ordinateur. Le serveur de terminaux peut interagir avec l'utilisateur et demander sur quel ordinateur il veut se connecter, etc. ou il peut le connecter sans rien demander. On peut parfois envoyer des travaux � une imprimante � travers un serveur de terminaux.
Un PC de nos jours a suffisamment de puissance de calcul pour agir comme un serveur de terminaux pour des terminaux texte sauf que chaque port s�rie devrait avoir sa propre interruption mat�rielle. Les PC ne poss�dent que peu d'interruptions libres � cette fin et puisqu'elles sont configur�es en dur on ne peut pas en cr�er davantage par logiciel. Une solution est d'utiliser une carte s�rie multiport avanc�e qui poss�de son propre syst�me d'interruptions (ou sur les mod�les de plus bas prix, partage l'une des interruptions du PC entre un certain nombre de ports). Voyez le HOWTO Serial pour plus d'informations sur de telles cartes. Si un tel PC fait tourner Linux avec getty tournant sur beaucoup de ports s�rie on peut le consid�rer comme un serveur de terminaux s'il est reli� � d'autres PC sur un r�seau et si son travail est principalement de transf�rer les donn�es et de g�rer les interruptions du port s�rie tous les 14 octets (ou � peu pr�s). On utilise parfois un logiciel appel� "radius".
De nos jours les vrais serveurs de terminaux servent plus que de simples terminaux. Ils servent aussi des PC qui �mulent des terminaux, et sont parfois reli�s � des racks de modems reli�s � des lignes t�l�phoniques. Certains contiennent parfois des modems int�gr�s. Si un terminal (ou un PC en �mulant un) est reli� directement � un modem, le modem � l'autre bout de la ligne devrait �tre reli� � un serveur de terminaux. Dans certains cas le serveur de terminaux par d�faut s'attend � ce que l'appelant utilise des paquets PPP, quelque chose que les vrais terminaux texte ne g�n�rent pas.
Un connecteur est plus ou moins reli� de fa�on permanente � l'extr�mit� d'un c�ble ou � une unit� mat�rielle. Il y a deux types de connexions de base : 1. DBxx avec des broches et 2. des connecteurs modulaires de type t�l�phone.
Un adaptateur ressemble � peu pr�s � un connecteur mais il poss�de deux extr�mit�s. C'est comme un c�ble qui est si court qu'il ne reste plus de partie c�bl�e du tout -- il ne reste que des connecteurs diff�rents sur chaque extr�mit�. L'adaptateur se branche de chaque c�t�. Il permet de relier entre eux deux connecteurs incompatibles en s'interposant entre les deux. Quelquefois le but de l'adaptateur est d'interchanger les fils. �videmment, on peut utiliser un c�ble sp�cial (�ventuellement fait maison) pour remplacer pour cet adaptateur.
Les connecteurs (ou un c�t� des adaptateurs) sont soit m�les soit femelles. Les connecteurs qui ont des broches sont m�les et ceux qui ont des "trous" sont femelles. Pour les connecteurs modulaires, ceux qui ont les contacts visibles sont les fiches tandis que ceux qui ont les contacts � l'int�rieur (pas facile � voir) sont les prises. Les fiches sont m�les ; les prises sont femelles (NdT : mais en fran�ais on dit aussi prise pour un connecteur m�le).
Il y a trois type d'adaptateurs de base : les null modem, les changeurs de genre et les adaptateurs de ports. Certains adaptateurs effectuent plus d'une fonction parmi ces trois fonctions.
Pour savoir comment installer un connecteur DB � l'extr�mit� d'un c�ble, voyez installer des connecteurs DB. Ceux-ci sont disponibles en 9 ou 25 broches. Les sp�cifications EIA-232 demandent des 25 broches mais puisque la plupart de ces broches ne sont pas utilis�es sur les ports s�rie ordinaires, 9 broches sont suffisantes. Voyez DB9-DB25 pour la signification des brochages. Les broches sont en g�n�ral num�rot�es si vous regardez de suffisamment pr�s ou si vous utilisez une loupe grossissante.
Ceux-ci ressemblent � des connecteurs de t�l�phone modernes mais ne sont parfois pas compatibles avec les connecteurs t�l�phoniques. Voyez aussi installer des connecteurs RJ. Il peut y avoir 6, 8 ou 10 conducteurs. RJ11/14 est une fiche de t�l�phone � 4-6 conducteurs. Une fiche qui lui ressemble est un connecteur MMJ (6 conducteurs) utilis� sur certains mod�les tardifs de terminaux VT (et autres). MMJ poss�de une languette d�cal�e et n'est pas compatible avec RJ11/14. Cependant, certains connecteurs ont �t� fabriqu�s et sont compatibles � la fois avec MMJ et RJ11/14. Le brochage MMJ est : 1-DTR, 2-TXD, 3-TXD GND, 4-RXD GND, 5-RXD, 6-DSR.
Un c�ble null modem avec des connecteurs MMJ (ou RJ11/14) reliera : 1-6, 2-5 et 3-4. Notez qu'un tel c�ble supporte le contr�le de flux DTR/DSR qui n'est pas (encore) support� par Linux. Faire vous-m�me votre propre c�ble null modem � 6 conducteurs est tr�s simple si vous comprenez que le c�ble t�l�phonique � 4 conducteurs de votre mur � votre t�l�phone, utilis� dans des centaines de millions d'habitations, est aussi un c�ble null modem. Trouvez-en un et c�blez votre c�ble de la m�me fa�on.
Si vous �talez un tel c�ble (ou le c�ble null modem de votre terminal) � plat sur le sol (sans torsion) vous noterez que les deux fiches aux extr�mit�s ont leurs contacts dor�s dirig�s tous les deux vers le haut (ou tous les deux vers le bas). Bien que ce soit sym�trique, c'est aussi null modem si vous y r�fl�chissez un peu. On pourrait associer un petit nombre de ces c�bles avec des coupleurs en ligne et tout fonctionnera correctement car chaque coupleur en ligne est aussi un adaptateur null modem. Deux p�riph�riques null modem en s�rie donnent une connexion directe.
RJ45 et RJ48 sont des fiches t�l�phoniques � 8 conducteurs (ou 10 conducteurs pour certaines applications informatiques). Ceux � 10 conducteurs sont l�g�rement plus larges et ne rentreront pas dans des fiches � 8 conducteurs. On les utilise � la fois pour des c�bles t�l�phoniques plats et des c�bles � paire torsad�e ronds. L'extr�mit� du connecteur c�t� c�ble peut �tre diff�rent pour les c�bles plats et ronds et � la fois RJ45 et RJ48 peuvent avoir 8 ou 10 conducteurs, donc assurez-vous que vous choisissez le bon. RJ48 poss�de un taquet suppl�mentaire ce qui fait qu'une fiche RJ48 ne rentrera pas dans une prise RJ45 (mais une fiche RJ45 rentrera dans une prise RJ48). On les utilise sur certaines cartes s�rie multiports et dans les r�seaux. Voici les num�ros de broches pour une prise � 8 conducteurs :
Fiche Prise (En regardant � (En regardant la l'extr�mit� d'un c�ble) cavit� dans un mur) .__________. .__________. | 87654321 | | 12345678 | |__. .__| |__. .__| |____| |____|
Vous pouvez essayer d'acheter un c�ble null modem court. On les �tiquette souvent comme des c�bles d'imprimantes s�rie (mais les imprimantes s�rie ne sont pas tr�s en vogue de nos jours, ni les c�bles associ�s). Malheureusement, ils ne fonctionneront probablement pas pour le contr�le de flux mat�riel. Assurez-vous que les connecteurs sur les extr�mit�s du c�ble conviendront aux connecteurs sur votre ordinateur et votre terminal.
Mais si vous avez besoin de c�bles plus longs pour relier des terminaux ou si vous avez besoin du contr�le de flux mat�riel, comment obtenez-vous les bons c�bles ? Les bons c�bles longs tout pr�ts peuvent s'av�rer difficiles � trouver (vous pouvez tenter de les chercher sur Internet), surtout si vous voulez utiliser un minimum (disons 4) de conducteurs. Une option est de les faire faire sp�cialement, ce qui risque d'�tre relativement cher bien que vous puissiez trouver quelqu'un pour le faire � des prix � peine plus �lev�s que ceux tout pr�ts (c'est ce que j'ai fait). Une autre alternative est de fabriquer le v�tre. Ceci peut n�cessiter des outils sp�ciaux. Si vous pouvez en trouver, du c�ble d'occasion peut s'av�rer faire une bonne affaire mais vous devrez probablement rec�bler les connecteurs. La plupart des connecteurs livr�s avec les c�bles courts sont moul�s de mani�re permanente sur le c�ble et ne peuvent pas �tre rec�bl�s mais la plupart des c�bles faits sur mesure ou � la main poss�dent des connecteurs qu'on peut rec�bler. L'avantage de fabriquer votre propre c�ble est que les comp�tences que vous acqu�rerez seront utiles si un c�ble se casse (ou devient mauvais) ou si vous devez fabriquer un autre c�ble en vitesse.
Les num�ros des broches devraient �tre grav�es sur la partie plastique du connecteur. Chaque broche devrait avoir un num�ro juste � c�t�. Vous aurez peut-�tre besoin d'une loupe grossissante pour les lire.
Voyez connecteurs DB pour une courte description de ces connecteurs. Malheureusement, la plupart des c�bles achet�s de nos jours poss�dent des connecteurs moul�s � chaque extr�mit� qu'on ne peut pas modifier. Si vous fabriquez des c�bles ou en modifiez un existant, vous devrez apprendre � conna�tre les broches. Il y en a deux sortes : soud�es et serties.
Les broches serties n�cessitent un outil de sertissage sp�cial et aussi un outil "d'insertion/extraction". Mais une fois que vous avez les outils, fabriquer et modifier un c�ble est plus rapide que de les souder. Si vous reliez deux fils � la m�me broche (n�cessaire aussi si vous voulez relier une broche connect�e � une autre broche) alors la soudure est plus rapide (pour ces broches). C'est d� au fait que les broches serties ne peuvent prendre qu'un fil � la fois, alors que les broches soud�es peuvent accepter plus d'un fil par broche.
Pour ins�rer des broches serties, poussez-les simplement � la main ou avec l'outil. Enlever une broche avec l'outil est un peu difficile. Ces instructions seront mieux compr�hensibles si vous avez � la fois l'outil et les fils devant vous. Vous devez mettre l'embout de l'outil autour de l'arri�re de la broche et l'ins�rer aussi profond que possible dans le trou (environ 1 cm 1/2.). Certains outils ont une marque (comme un tout petit trou) pour indiquer jusqu'o� l'ins�rer. L'embout de l'outil devrait avoir un creux taill� en pointe pour que vous puissiez placer l'embout autour du fil en le mettant l� o� le creux est plus large que le fil. L'outil peut avoir deux embouts. Celui qui est le plus difficile � mettre autour du fil est aussi celui qui enl�ve le fil le plus facilement puisqu'il enveloppe presque compl�tement le fil.
Avec l'embout proprement ins�r�, tirez � la fois doucement � la fois sur l'outil et sur le fil. Si �a ne vient pas, l'outil n'a s�rement pas �t� ins�r� correctement, poussez-le alors plus en avant ou bien tournez-le dans une position diff�rente (ou les deux). Vous auriez peut-�tre d� utiliser l'autre embout qui entoure mieux la broche. En utilisant cet outil, on peut facilement convertir un c�ble droit en c�ble null modem, etc.
Vous pouvez avoir des probl�mes en utilisant l'outil d'"insertion/extraction". Si les outils ne s'ins�rent pas sur le derri�re de la broche, il se peut que la broche n'ait pas �t� sertie correctement sur le fil et tienne plus du carr� que du rond, etc. Si une broche commence � sortir mais ne se redresse pas en entier, la broche peut �tre tordue. Regardez-la sous une loupe grossissante. Redresser une broche avec une pince � �piler peut endommager le plaquage en or. Parfois une broche coinc�e peut �tre pouss�e au dehors avec le bout d'une lame de tournevis �paisse (ou quelque chose de semblable) mais si vous poussez trop fort vous pouvez agrandir le trou en plastique ou tordre la broche.
N'essayez pas de souder sauf si vous savez ce que vous faites ou avez lu comment le faire.
Ce sont des connecteurs modulaires de t�l�phones, dont une sorte est utilis�e pour la plupart des t�l�phones ordinaires. Mais il y a beaucoup de sortes diff�rentes (voyez connecteurs modulaires RJ).
Ils ne sont pas faciles � r�utiliser. Vous pourriez retirer les fils, pousser � l'int�rieur un outil pointu qui rel�verait les contacts dor�s et r�utiliser le connecteur. Il y a des outils de sertissage sp�ciaux qu'on utilise pour les installer ; un outil diff�rent pour chaque sorte.
Si vous n'avez pas d'outil de sertissage, l'installation est quand m�me possible (mais difficile) en utilisant un petit tournevis (et peut-�tre un marteau). Poussez les fils du c�ble � l'int�rieur et ensuite poussez chaque contact dor� vers le bas assez fort avec le petit tournevis qui passera juste entre les stries isolantes entre les contacts. Vous pouvez l'ab�mer si vous n'utilisez pas un tournevis avec une t�te qui a presque la m�me �paisseur que les contacts ou si le tournevis glisse du contact alors que vous le poussez vers le bas. Vous pouvez aussi utiliser un petit marteau pour faire contrepoids sur le tournevis (poussez d'abord � la main).
Assurez-vous de ne pas ab�mer le "levier d'extraction" sur le connecteur quand vous poussez sur les contacts. Ne le posez pas simplement sur une table en poussant les contacts. Il est pr�f�rable de mettre une cale (d'environ 1 mm d'�paisseur) qui se placera parfaitement dans la crevasse entre le levier et le corps. Pour une telle cale vous pouvez utiliser du bristol �pais, plusieurs cartes t�l�phoniques ou du bois. Puisque le dessous du connecteur (que vous mettrez sur la table) n'est pas droit (� cause du "levier d'extraction"), assurez-vous que le dessus de la table est recouvert de quelque chose de mou (comme un morceau de carton) pour aider � supporter le connecteur qui n'est pas droit. Encore mieux : vous pourriez mettre une autre cale d'un millim�tre sous les 6 premiers millim�tres du connecteur en le supportant juste en dessous de la partie visible des contacts. Un dessus de table mou ne peut pas faire de mal non plus. Une autre m�thode (je n'ai jamais fait cela) est de mettre le connecteur dans un �tau mais faites attention � ne pas casser le connecteur.
En comparaison de l'utilisation d'un outil de sertissage, l'installation comme indiqu� ci-dessus prend beaucoup plus de temps et est plus sujette aux erreurs mais c'est quelquefois plus exp�ditif et bien moins cher que d'acheter un outil sp�cial si vous n'avez qu'un ou deux connecteurs � installer.
La configuration (mise en place) n�cessite � la fois de stocker la configuration dans la m�moire non volatile du terminal et de mettre des commandes dans les fichiers de d�marrage (sur votre disque dur) qui se lanceront � chaque fois que l'ordinateur est allum� (ou peut-�tre aussi � chaque changement de niveau d'ex�cution). Cette section donne une vue d'ensemble de la configuration et couvre la configuration des principales options de communication � la fois pour le terminal et pour l'ordinateur. Les deux grandes sections suivantes couvrent la configuration du terminal (voyez mise en place du terminal et de l'ordinateur (voyez d�tails de la mise en place de l'ordinateur (configuration).
Quand un terminal est install� il est n�cessaire de configurer le terminal physique en sauvant (dans sa m�moire non volatile qui n'est pas perdue lorsque l'on �teint le terminal) les caract�ristiques qu'il aura au d�marrage. Vous pouvez avoir de la chance et avoir un terminal qu'on a d�j� configur� correctement pour votre installation de sorte que peu ou aucune configuration sur le terminal ne soit n�cessaire.
Il y a deux fa�ons simples de configurer un terminal. L'une est de s'asseoir devant le terminal et de parcourir un ensemble de menus de configuration. Une autre est d'envoyer des s�quences d'�chappement au terminal � partir de l'ordinateur h�te. Avant que vous n'envoyiez quoi que ce soit au terminal (comme les s�quences d'�chappement ci-dessus), ses options d' interface de communication comme la vitesse de transmission doivent �tre configur�es pour correspondre � celles de l'ordinateur. On ne peut faire ceci qu'en s'asseyant devant le terminal puisqu'il faut configurer la communication correctement avant que l'ordinateur et le terminal ne puissent se "parler". Voyez configuration du terminal.
� part peut-�tre l'envoi de s�quences d'�chappement � partir de l'ordinateur pour configurer le terminal, il faut configurer l'ordinateur lui-m�me pour g�rer le terminal. Si vous avez de la chance tout ce que vous avez � faire est d'ajouter une commande "getty" dans le fichier /etc/inittab pour qu'une invite "login:" soit envoy�e au terminal quand l'ordinateur d�marre. Voyez getty (dans /etc/inittab) pour plus de d�tails.
L'ordinateur communique avec le terminal en utilisant un logiciel de pilote de p�riph�rique (qui fait partie du noyau). Le pilote de p�riph�rique s�rie poss�de une configuration par d�faut et est aussi configur� en partie (parfois en totalit�) par le programme getty avant de lancer "login" sur chaque terminal. Cependant, des configurations suppl�mentaires sont souvent n�cessaires en utilisant des programmes appel�s "stty" et "setserial". Ces programmes (si besoin est) doivent �tre lanc�s � chaque fois que l'ordinateur d�marre puisque la configuration est perdue � chaque fois que l'ordinateur s'�teint. Voyez d�tails de la mise en place de l'ordinateur (configuration).
Il y a �norm�ment d'options de configuration dans lesquelles vous pourrez piocher. Les options de communication doivent �tre correctes ou le terminal ne fonctionnera pas du tout. D'autres options peuvent �tre incorrectes, mais ne causeront pas de probl�mes puisque les possibilit�s qu'elles introduisent ne sont pas utilis�es. Par exemple, si vous n'avez pas d'imprimante reli�e au terminal, la mani�re dont sont positionn�s les param�tres de configuration de l'imprimante dans le terminal n'a aucun effet. Cette derni�re affirmation n'est pas correcte � 100 %. Supposez que vous n'avez pas d'imprimante mais que l'ordinateur envoie (par erreur) au terminal une commande pour rediriger tous les caract�res (les donn�es) de l'ordinateur vers l'imprimante uniquement. Alors rien ne s'affichera sur l'�cran et votre terminal sera mort. Certains terminaux poss�dent une option de configuration pour informer le terminal qu'aucune imprimante n'est pr�sente. Dans ce cas le terminal ignorera toute commande qui redirigerait la sortie vers "l'imprimante" et le probl�me ci-dessus n'arrivera jamais. Cependant, ceci n'apporte pas beaucoup d'aide puisqu'il y a beaucoup d'autres commandes erronn�es qu'on peut envoyer � votre terminal et qui s�meront vraiment la pagaille. Cela arrivera s�rement si vous envoyez un fichier binaire au terminal par accident.
Dans certains cas un param�trage incorrect ne causera aucun probl�me jusqu'� ce qu'il vous arrive de lancer une application peu connue qui attend du param�tre qu'il soit positionn� d'une certaine fa�on. Certaines options ne concernent que l'apparence de l'affichage et le terminal fonctionnera correctement si elles sont mal positionn�es mais ne sera pas aussi beau � regarder.
Certaines options ne concernent que le terminal et n'ont pas besoin d'�tre positionn�es sur l'ordinateur. Par exemple : voulez-vous des lettres noires sur un fond clair ? C'est plus agr�able � l'oeil qu'un fond noir. Une touche qu'on appuie doit-elle se r�p�ter ? Est-ce que l'�cran doit d�filer quand une ligne d�passe le bord droit de l'�cran ? Est-ce que les touches doivent �mettre un cliquetis ?
Certains param�tres (options) de communication concernent � la fois le terminal et l'ordinateur et doivent �tre positionn�s exactement � l'identique sur les deux : vitesse, parit�, bits/caract�res et contr�le de flux. D'autres options de communication ne sont positionn�es que sur le terminal (et uniquement certaines d'entre elles sont essentielles pour �tablir une communication). D'autres encore comme l'adresse et l'interruption (IRQ) du port physique ttyS ne sont positionn�es que sur l'ordinateur en utilisant la commande "setserial". Jusqu'� ce que toutes les options essentielles ci-dessus soient param�tr�es de mani�re compatible on ne pourra pas faire de communication s�rie satisfaisante (et s�rement pas de communication du tout) entre le terminal et l'ordinateur. Pour le terminal, on doit positionner ces options � la main avec des menus sur chaque terminal (ou en utilisant une sorte de cartouche sp�ciale sur chaque terminal). L'ordinateur h�te est configur� en lan�ant des commandes � chaque d�marrage de l'ordinateur (ou quand les gens se loggent). Quelquefois le programme getty (qu'on trouve dans le fichier /etc/inittab) qui d�marre le processus login s'occupera de ceci pour l'ordinateur. Voyez getty (dans /etc/inittab).
Les param�tres � la fois pour l'ordinateur et le terminal sont :
Certains param�tres essentiels au terminal seul sont :
Si le programme getty (dans /etc/inittab) ne peut pas param�trer la partie c�t� ordinateur de la mani�re dont vous le d�sirez, vous aurez alors besoin d'utiliser l'une des commandes stty et setserial (ou les deux).
Elle doit �tre identique � la fois sur le terminal et l'ordinateur. La vitesse est en bits/seconde (bps ou vitesse en bauds). Utilisez la vitesse la plus grande qui fonctionne sans erreurs. Autoriser le contr�le de flux peut rendre possible des vitesses plus �lev�es. Il se peut qu'on puisse configurer deux vitesses sur le terminal : transmission et r�ception, qu'on abr�ge parfois en T et R. On leur donne en g�n�ral la m�me valeur puisque stty dans Linux ne semble pas encore avoir l'option de les positionner diff�remment. (Il y a une option pour faire ceci avec la commande "stty" mais en r�alit� il semble qu'elle leur donne la m�me valeur.) Les vitesses courantes sont 300, 600, 1200, 2400, 4800, 9600, 19200, 38400 ... Les vitesses basses (comme 600) sont faites pour les imprimantes et les terminaux � sortie papier.
Pour une d�finition, voyez la parit� expliqu�e. La parit� d�sactiv�e est souvent la valeur par d�faut. Pour activer la parit�, vous devez � la fois l'activer et ensuite s�lectionner une parit� paire ou impaire. Cela ne fait probablement pas de diff�rence si c'est pair ou impair. Pour les terminaux il y a parfois des param�tres de parit� pour la transmission et la r�ception. Vous devriez positionner les deux � la m�me valeur puisque stty sur l'ordinateur ne permet pas un param�trage diff�rent. Le port s�rie du PC ne peut pas habituellement supporter differentes parit�s. Certains terminaux ne sont pas capables de positionner la parit� de r�ception et ignoreront simplement tout bit de parit� re�u. Sur certains terminaux plus anciens, si vous utilisez 8 bits de donn�es par octet, la parit� ne fonctionnera pas puisqu'il n'y a pas de place au niveau mat�riel pour le bit de parit� suppl�mentaire.
Est-ce vous devriez utiliser la parit� ? Il est bon de disposer de la parit�, bien qu'elle ne soit pas strictement n�cessaire. Si vous n'avez pas de parit�, vous pourrez avoir une lettre incorrecte ici ou l� et finirez par corriger des fautes d'orthographe qui n'existent pas vraiment. Cependant, la parit� a un co�t. D'abord, elle est plus compliqu�e � configurer puisqu'en g�n�ral par d�faut il n'y a pas de parit�. Ensuite, la parit� diminuera la vitesse avec laquelle les octets traversent le c�ble puisqu'il y aura un bit suppl�mentaire par octet. Ceci peut ou peut ne pas diminuer la vitesse effective.
Par exemple, un terminal � sortie papier est en g�n�ral limit� par la m�canique du processus d'impression. L'augmentation des octets/seconde quand l'ordinateur (sa puce UART) est en train de transmettre ne conduit qu'� plus de signaux "d'arr�t" de contr�le de flux pour permettre au m�canisme d'impression de rattraper le rythme. � cause des attentes suppl�mentaires dues au contr�le de flux, la vitesse effective n'est pas meilleure sans parit� qu'avec. La situation est identique pour certains terminaux : apr�s avoir mis en place la parit� il peut y avoir moins d'attente due au contr�le de flux par unit� de temps ce qui r�sulte en plus de bits/seconde (en moyenne). Cependant, � cause des bits de parit� ajout�s, le nombre d'octets/seconde (en moyenne) reste le m�me.
Une possibilit� est d'installer les terminaux sans parit�. Ensuite si on remarque des erreurs de parit�, on peut l'activer plus tard. Pour d�tecter des erreurs possibles sans parit�, regardez des erreurs de frappe que vous ne pensez pas avoir faites. Si vous d�tectez une telle erreur, rafraichissez l'�cran (retransmettez de l'ordinateur). Si l'erreur s'en va, c'est alors s�rement une erreur de parit�. Si trop d'erreurs surviennent (comme plus d'une par quelques centaines d'�crans), il faut faire une action corrective comme : activer la parit� et/ou r�duire la vitesse et/ou utiliser un c�ble plus court/meilleur. Activer la parit� ne r�duira pas le nombre d'erreurs mais vous signalera quand une erreur s'est produite.
La politique oppos�e est d'activer la parit� d�s le d�part. Ensuite si on ne voit jamais d'erreur de parit� (des symboles d'erreur sur l'�cran), sur une p�riode de temps raisonnable, disons un mois ou deux, on peut la d�sactiver sans danger.
C'est la taille d'un caract�re (le nombre de bits de donn�es par caract�re, en excluant tout bit de parit�). Pour l'ASCII, c'est 7, mais c'est 8 pour les jeux de caract�res ISO. Si vous n'allez utiliser que des caract�res ASCII, s�lectionnez alors 7 bits puisqu'il est plus rapide de transmettre 7 bits que 8. Certains vieux terminaux n'afficheront que des caract�res 7 bits.
Il faut choisir entre le contr�le de flux "mat�riel" (par exemple dtr/cts) et "logiciel" (Xon/Xoff). (le menu du terminal Adds utilise de mani�re incorrecte "Xon/Xoff" pour indiquer tout type de contr�le de flux.) Bien que le contr�le de flux mat�riel soit plus rapide (si les deux fils suppl�mentaires n�cessaires sont pr�sents dans le c�ble et si le terminal le supporte) dans la plupart des cas Xon/Xoff devrait fonctionner correctement. Certaines personnes disent qu'elles ont r�solu des probl�mes d�rangeants (voir ci-dessous) en passant au contr�le de flux mat�riel mais le contr�le de flux logiciel a bien fonctionn� sur les autres installations (et chez moi personnellement).
Si vous utilisez le contr�le de flux logiciel (Xon/Xoff) et avez des utilisateurs qui ne le savent pas, ils peuvent alors envoyer par accident un Xoff � l'h�te et bloquer leur terminal. Pendant qu'il est bloqu�, ils peuvent tr�s bien taper fr�n�tiquement en une vaine tentative pour le d�bloquer. Quand alors Xon est enfin envoy� pour r�tablir la communication, tout ce qui a �t� tap� � toute vitesse est ex�cut�, peut-�tre avec des r�sultats inattendus. Ils ne risquent pas ceci avec le contr�le de flux mat�riel. Voyez contr�le de flux pour une explication sur le contr�le de flux.
Puisque la plupart des terminaux poss�dent deux connecteurs ou plus derri�re eux, il est en g�n�ral possible de dire que l'un de ces connecteurs sera reli� � l'ordinateur et de dire que l'autre connecteur sera le port imprimante. Il peut y avoir un nom � c�t� du connecteur (regardez-le bien) et ce nom (comme Aux ou Serial 2, ou Modem) peut �tre donn� � la connexion vers l'h�te principal ou vers l'imprimante (ou autre).
Bien que tout ce qui est au-dessus puisse sembler tr�s compliqu�, faire fonctionner un terminal est souvent assez simple. La section installation rapide d�crit une mani�re simple d'essayer de le faire. Mais si cela ne fonctionne pas ou si vous voulez am�liorer l'affichage, vous avez besoin d'en lire plus.
� part la prochaine sous-section qui d�crit l'envoi de s�quences d'�chappement au terminal, cette section pr�sente principalement les d�tails de la configuration du terminal � la main en s'asseyant devant le terminal et en se d�pla�ant entre diff�rents menus. Si vous ne l'avez pas encore fait, vous devriez lire vue d'ensemble de la mise en place (configuration) d'un terminal. C'est mieux si vous avez le manuel du terminal, mais m�me si vous ne l'avez pas il y a ici des informations concernant beaucoup d'options que vous serez peut-�tre amen� � configurer.
Les param�tres de communication tels que la vitesse d'envoi doivent toujours �tre configur�s sur le terminal puisque si vous ne le faites pas ici on ne peut pas communiquer avec le terminal. Une fois que la communication est �tablie vous avez deux choix pour effectuer le reste de la configuration du terminal. Vous pouvez continuer � faire la configuration � la main sur le terminal et sauver les r�sultats dans la m�moire permanente du terminal ou vous pouvez le faire en envoyant des s�quences d'�chappement au terminal � partir de l'ordinateur � chaque fois que le terminal est allum�.
Si vous savez comment mettre en place et sauver une bonne configuration dans le terminal ce peut �tre la meilleure fa�on. Si vous ne savez pas, vous pouvez simplement envoyer la cha�ne d'initialisation de terminfo � votre terminal � chaque fois que vous utilisez le terminal. Peut-�tre que ne rien faire vous donnera quand m�me un terminal utilisable. Vous (ou une application) pouvez toujours changer les choses en envoyant certains s�quences d'�chappement au terminal.
Une fois que l'interface de communication est en place, le reste de la configuration des terminaux peut parfois �tre fait en envoyant des s�quences d'�chappement aux terminaux depuis l'ordinateur. Si vous avez un grand nombre de terminaux, il peut �tre utile d'�crire (ou de trouver) un script shell pour faire ceci de mani�re automatique. Il peut (ou non) y avoir une commande � envoyer au terminal pour lui dire de sauver sa configuration en cours dans sa m�moire permanente pour qu'elle soit pr�sente la prochaine fois qu'on allumera le terminal.
Il y a une mani�re simple d'envoyer ces s�quences d'�chappement et une mani�re compliqu�e. Avec la mani�re simple, vous ne regardez jamais les s�quences d'�chappement mais envoyez des commandes qui trouvent toutes seules la s�quence d'�chappement appropri�e dans la base de donn�es terminfo et l'envoient. Malheureusement, toutes les s�quences d'�chappement que vous avez besoin d'envoyer ne sont pas toujours dans la base de donn�es terminfo. Ainsi la mani�re plus compliqu�e (mais peut-�tre meilleure) est d'envoyer directement les s�quences d'�chappement.
Pour cette m�thode compliqu�e vous aurez besoin d'un manuel avanc�. Les vieux manuels de terminaux comprenaient autrefois une liste d�taill�e de s�quences d'�chappement mais les manuels r�cents n'en ont g�n�ralement pas. Pour les trouver vous devrez peut-�tre acheter un autre manuel intitul� "manuel du programmeur" (ou similaire) qui n'est pas fourni avec le terminal. Une liste de s�quences d'�chappement de certains terminaux est sur Internet mais c'est une liste brute et s�rement incompl�te.
M�me sans manuel ou autre, vous pouvez quand m�me envoyer des commandes pour configurer le terminal en utilisant les programmes "tput" et "setterm". Voyez changer les param�tres du terminal. Vous pourriez simplement envoyer une cha�ne d'initialisation au terminal � partir de l'entr�e terminfo si la cha�ne d'initialisation configure le terminal comme vous le d�sirez. Voyez cha�ne d'initialisation. Except� si vous pensez envoyer ces s�quences de l'ordinateur au terminal � chaque fois que vous allumez ce dernier, vous devez sauver ces param�tres dans la m�moire permanente du terminal.
Sur les vieux terminaux, cherchez sur le clavier des noms juste au-dessus de la rang�e sup�rieure du pav� num�rique. S'ils existent, ces noms peuvent repr�senter l'action des touches en mode configuration. Certains vieux terminaux peuvent n'avoir qu'un menu de configuration (setup). Certains encore plus anciens poss�dent des interrupteurs physiques. Dans certains cas toutes les touches ne sont pas bien nomm�es mais peuvent �tre bien cach�es. Bien s�r, si vous activez quelque chose en basculant un interrupteur, c'est "sauvegard�" et vous n'avez pas besoin de sauver le param�tre en m�moire permanente.
Pour s�lectionner des options (configurer) sur le terminal, vous devez d'abord entrer en mode "setup" et ensuite s�lectionner des options (c'est-�-dire configurer) en utilisant des menus stock�s dans le terminal et affich�s sur l'�cran. Pour ce faire, le terminal n'a m�me pas besoin d'�tre reli� � un ordinateur. La mani�re d'entrer en mode de configuration est expliqu�e dans le manuel du terminal, mais voici quelques indices qui peuvent aider :
S'il y a une touche "setup", essayez de l'enfoncer. Essayez aussi en appuyant sur la touche "Shift" en m�me temps.
Pour vous d�placer dans les menus de configuration, utilisez les touches fl�ch�es. Utilisez Retour, Espace ou une touche sp�ciale ("toggle" sur les vieux terminaux) pour s�lectionner quelque chose. Pour sortir du mode de configuration choisissez exit dans un menu (ou sur certains vieux terminaux appuyez de nouveau sur la touche setup).
Pour que le terminal fonctionne, il faut param�trer correctement la vitesse, la parit�, le nombre de bits par caract�re et le mode de communication. Un contr�le de flux incorrect peut �tre la cause de la perte ou de la corruption des donn�es affich�es � l'�cran. On a parl� des options de communication essentielles (� la fois pour le terminal et pour l'ordinateur) dans une autre section : voyez interface de communication. La liste suivante fournit quelques liens dans cette section, ainsi que des options de communication suppl�mentaires positionn�es uniquement sur le terminal.
Votre configuration doit �tre sauv�e dans la m�moire permanente du terminal pour �tre en place la prochaine fois que vous allumez le terminal. Si vous manquez � cette sauvegarde, les nouveaux param�tres seront perdus quand vous �teindrez le terminal. Avant de vous fatiguer � configurer un terminal, assurez-vous que vous savez sauvegarder les param�tres. Sur les terminaux modernes la commande de sauvegarde se fait gr�ce � un menu. Dans certains vieux terminaux, seul le manuel vous indique comment sauver. Pour beaucoup d'entre eux, pressez Ctrl-S pour sauver.
Voyez la page de configuration de Teemworld pour avoir une description d'un grand nombre de ces param�tres utilis�s en �mulation de terminaux. L'�mulation est souvent l�g�rement diff�rente du terminal r�el.
Ce qui suit dans cette section d�crit certaines options disponibles dans les menus de configuration de beaucoup de terminaux. Les options sont aussi appel�es param�tres ou capacit�s. Beaucoup d'options sont parfois appel�es "modes". Param�trer des options est souvent appel� "configurer". On peut param�trer beaucoup de ces options en envoyant certaines s�quences d'�chappement au terminal. Des mod�les et marques diff�rents de terminaux ont des options vari�es et la m�me option peut avoir des noms diff�rents (qu'on ne donnera pas tous ici). Les noms abrupts utilis�s par Wyse sont entour�s de {...}. Les noms utilis�s principalement pour les terminaux VT sont entour�s de {{...}}.
La plupart des terminaux modernes peuvent �muler plusieurs autres terminaux. Le terminal peut s�rement faire plus si on le fait s'�muler lui-m�me (en fait sans �mulation) {personnalit� native}. Quelque fois il y deux �mulations diff�rentes pour le m�me mod�le de terminal. Par exemple, VT220-7 �mule un VT220 avec 7 bits par octet alors que VT220-8 �mule un VT220 avec 8 bits par octet (256 caract�res possibles).
Des vieux mod�les de terminaux poss�dent en g�n�ral moins de possibilit�s que les mod�les plus r�cents. Supposez qu'on veuille �muler un vieux terminal tout en gardant certaines possibilit�s avanc�es du mod�le de terminal plus r�cent devant lequel on s'assied. Ceci est parfois possible (jusqu'� un certain niveau). Cette possibilit� est parfois appel�e {Enhance} (ou Enhanced ??).
C'est la taille de la cellule dans laquelle tient un caract�re. On la mesure en pixels (= petits points). Plus il y a de points, meilleure est la r�solution. 10x16 repr�sente 10 points de large sur 16 points de haut (16 lignes et 10 colonnes). Notez que la notation est invers�e par rapport � la notation de la dimension des matrices qui donnent les lignes (la hauteur) d'abord. De m�me, la cellule de caract�re comprend les lignes et les colonnes allou�es � l'espace entre des caract�res adjacents, donc la taille de la cellule qui d�finit les bords d'un caract�re r�el peut �tre plus petite.
En g�n�ral il y a 80 colonnes et 24 ou 25 lignes. Ceci veut dire qu'il peut y avoir jusqu'� 80 caract�res sur une ligne de l'�cran. Beaucoup de terminaux poss�dent une option de 132 caract�res par colonne mais, sauf si vous avez un grand �cran, les petits caract�res peuvent �tre difficiles � lire. {{Activer le mode 132 colonnes}}
On peut param�trer le curseur pour qu'il apparaisse comme un rectangle (= bloc) {Blk}. D'autres options sont le soulign� {Line} ou le clignotement. Je pr�f�re un bloc non clignotant {Steady} puisqu'il est suffisamment grand pour qu'on le trouve rapidement sans qu'il y a ait de clignotement distrayant. Si vous le rendez invisible (une option sur certains terminaux) il dispara�tra mais les nouveaux caract�res appara�tront � l'�cran au fur et � mesure que vous tapez sous le curseur invisible.
Les attributs d'affichage peuvent �tre soit des cookies magiques soit des octets d'attributs assign�s � chaque caract�re. Pour les cookies magiques, il y a une limite � leur �tendue : leur effet s'�tend-il jusqu'� la fin de la ligne ou jusqu'� la fin de la page ? Il est mieux d'utiliser des octets d'attributs (qui peuvent en r�alit� �tre des demi-octets = petits bouts).
Ils peuvent avoir des noms vari�s tels que "contr�les d'affichage". D�sactiv�s (par d�faut), ils veulent dire "interpr�ter les caract�res de contr�le". Quand on les active, vous voyez les s�quences d'�chappement de l'h�te (que vous ne voyez jamais � l'�cran en temps normal). Pour que ces s�quences soient visualis�es d'un coup sur une ligne, le terminal ne les interpr�te pas, sauf la s�quence CR LF, qui cr�e une nouvelle ligne. Voyez codes de contr�le.
Certains terminaux peuvent afficher des caract�res en largeur et/ou en hauteur double. Cette possibilit� est rarement n�cessaire. En changeant une ligne en largeur double (DW = Double Width) la moiti� gauche (RH = Right Half) est pouss�e � l'ext�rieur de l'�cran et il faut se poser la question de l'effacer ou non. "Pr�server" veut dire garder la moiti� gauche des lignes en largeur double. En mode hauteur double, il peut �tre n�cessaire d'envoyer chacune de ces lignes deux fois (la deuxi�me fois une ligne plus bas) pour obtenir une ligne en hauteur double � l'�cran.
La vid�o normale consiste en des lettres (premier plan) claires (blanches, vertes, ambre) sur un fond fonc� (noir). La vid�o inverse {Display Light} est le contraire : du texte noir sur un fond clair. Cela est plus commode pour les yeux (sauf si la pi�ce est sombre).
Une ligne d'�tat est une ligne en haut ou en bas de l'�cran qui affiche des informations sur l'application en cours d'utilisation. Elle est souvent mise en valeur d'une certaine mani�re. Avec une telle ligne d'�tat, une application peut envoyer au terminal une s�quence d'�chappement sp�ciale qui veut dire que le texte qui suit concerne la ligne d'�tat. Cependant, beaucoup d'applications n'utilisent pas cette possibilit� et � la place simulent une ligne d'�tat r�elle en positionnant directement le curseur. L'utilisateur de base qui le regarde ne voit pas la diff�rence.
En basculant le nombre de colonnes de 80 � 132 (ou l'inverse), est-ce que les donn�es affich�es dans le format pr�c�dent doivent �tre effac�es ou pr�serv�es ? {80/132 Clr} {{Screen Width Change}}. La mani�re dont vous positionnez cette option ne devrait pas faire de diff�rence puisque si une application utilise 132 colonnes, elle devrait positionner cette option correctement gr�ce � une s�quence d'�chappement.
Pour qu'un terminal Wyse puisse acc�der � plusieurs pages dans la m�moire d'affichage, il faut activer {Multipage}.
La m�moire du terminal peut �tre divis�e en un certain nombre de pages. Voyez pages et pages (d�finition) pour une explication sur les pages. Vous pouvez partitionner la m�moire de pages en un certain nombre de pages de taille d�termin�e. Les applications Linux ne semblent pas utiliser les pages pour le moment, il ne devrait donc pas y avoir de diff�rence au niveau de la configuration.
La m�moire du terminal peut �tre divis�e en un certain nombre de pages. Voyez pages et pages (2) pour avoir une explication sur les pages. Quand on d�place le curseur � un endroit en m�moire vid�o qui n'est pas affich�e � cet instant (comme une autre page, ou sur la m�me page mais � un endroit non affich� � l'�cran), est-ce que l'affichage doit suivre pour que l'on voie la nouvelle position du curseur ? Si c'est le cas, c'est ce qu'on appelle le "couplage". En ce qui concerne le mouvement du curseur dans la m�me page, il y a le "couplage vertical" et le "couplage horizontal". En ce qui concerne le mouvement vers une autre page, il y a le "couplage de page".
Le terminal donnera son identit� et son �tat, ou enverra un message pr�-enregistr� en r�ponse � certaines s�quences d'�chappement.
Vous pouvez �crire un message court pendant la configuration qui peut �tre envoy� de mani�re optionnelle � l'h�te durant le d�marrage ou �tre envoy� � l'h�te en r�ponse � une demande de l'h�te (peut-�tre le caract�re de contr�le ENQ (enquire, demande)).
Si ce param�tre est positionn�, envoie le message de r�ponse � l'h�te durant le d�marrage sans que l'h�te le demande. Est-ce qu'un processus "getty" quelconque cherchent ce message ??
Si ce param�tre est positionn�, il ne laissera personne voir le message de r�ponse (sauf bien s�r l'ordinateur h�te). S'il faut le modifier, d�sactivez "r�ponse cach�e" et le message pr�c�demment cach� sera d�truit pour que vous puissiez alors entrer un nouveau message (mais vous ne verrez pas le message pr�c�dent).
Le terminal envoie cette r�ponse � la r�ception d'une demande d'identit�.
Quand ce param�tre est positionn�, la pression de n'importe quelle touche provoque un cliquetis (�mis par un minuscule haut-parleur dans le clavier). Ces cliquetis ennuient certaines personnes et je pense qu'il est mieux de d�sactiver cette option.
Quand la touche de verrouillage majuscule est enfonc�e, les touches alphab�tiques doivent-elles �tre les seules � g�n�rer des caract�res en majuscule ? Si le param�tre est positionn� � {Caps} ou majuscule uniquement (upper-case-only), alors l'appui sur une touche num�rique avec le verrouillage majuscules tapera le chiffre en question. Pour obtenir le symbole au-dessus du chiffre il faudra appuyer sur la touche shift � la main. C'est le mode normal. S'il est positionn� sur {Shift} toutes les touches tapent alors le caract�re "d�cal�" quand le verrouillage majuscules est enfonc� (l'appui sur la touche 5 devrait afficher % sans devoir appuyer sur Shift, etc.) NdT : sur les claviers fran�ais, c'est l'inverse, les chiffres �tant normalement obtenus en appuyant sur la touche Shift.
Si on maintient une touche enfonc�e, celle-ci est "tap�e" de mani�re r�p�t�e. Cela est pratique pour taper r�p�titivement le m�me caract�re pour cr�er une ligne � travers une page.
Quand le curseur arrive � 8 colonnes du bord droit de l'�cran, une sonnette sonne (comme sur une vieille machine � �crire). Quasiment tous les �diteurs cr�eront automatiquement une ligne nouvelle si n�cessaire (pas besoin d'appuyer sur la touche entr�e), par cons�quent cette possibilit� est rarement n�cessaire.
Le code envoy� � l'h�te quand on appuie sur une touche correspond normalement au code ASCII de cette touche (et d�pend aussi des touches Shift et Control). Sur certains terminaux vous pouvez faire en sorte que n'importe quelle touche envoie n'importe quel code. C'est-�-dire que vous pouvez compl�tement red�finir le clavier en configurant le terminal de cette fa�on. Cela peut �tre utile pour certaines langues �trang�res et pour les claviers Dvorak etc. qui vous permettent de taper plus rapidement.
Les terminaux Wyse poss�dent une touche pr�s du coin inf�rieur gauche qu'on peut configurer pour des fonctions vari�es. Elle peut �tre appel�e "Funct", "Compose Character", "Alt", "Hold" or "Scroll Lock". Les mod�les r�cents n'ont pas toutes les options suivantes : Quand on la met sur {Hold} (arr�t du d�filement, No-Scroll), elle permet d'arr�ter le flux de donn�es (en utilisant le contr�le de flux) vers le terminal. L'appui � nouveau sur cette touche redonne un flux normal. Quand on la met sur {Compose} elle permet de g�n�rer un nombre limit� de caract�res non-latins pr�d�finis. Quand on la met sur Meta, cela en fait une touche Meta qui positionne le bit de haut rang sur chaque octet. Quand on la met sur {Funct} (et qu'on l'enfonce), chaque touche alphanum�rique enfonc�e envoie un octet pr�fixe (SOH) et un octet suffixe (CR) qui encadrent le code de l'octet ASCII. Quand on la met sur {Kpd Compose} (et qu'on l'enfonce) alors la frappe d'un nombre d�cimal sur le pav� num�rique (suivi de "entr�e") envoie le m�me chiffre en hexad�cimal ??
On peut configurer le pav� num�rique (le rectangle de touches presque toutes num�riques � la droite de la partie principale du clavier) pour envoyer des codes sp�ciaux qui feront certaines choses dans certaines applications. Idem pour les touches fl�ch�es. Il y a donc un mode "normal" o� elles envoient ce qui est marqu� sur la touche (ou la s�quence d'�chappement normale pour une touche fl�ch�e) et un mode "application" o� une s�quence d'�chappement sp�ciale est envoy�e. Dans certains cas il y a un mode num�rique "hexad�cimal" qui ressemble au mode num�rique � la diff�rence que 6 touches non num�riques envoient les lettres A � F. On peut ainsi taper par exemple "B36F" sur le pav� num�rique.
Selon la mani�re dont les touches sont configur�es Shift-Del envoie parfois le caract�re de contr�le CAN et Shift-Backspace envoie parfois DEL.
Les terminaux r�cents peuvent �muler un clavier de PC en envoyant des codes de balayage PC (voyez le Keyboard-and-Console-HOWTO) au lieu de codes ASCII. Cela pourrait �tre utilis� si vous �tiez directement reli� � un PC sous DOS/Windows. Positionnez {Keycode} sur {Scan}. L'�mulation du "PCTerm" DEC devrait faire la m�me chose et m�me plus. Un port s�rie sous Linux ne peut pas s'occuper de tels codes de balayage.
Certaines touches peuvent contenir des lettres alternatives. Quand on positionne les touches sur "machine � �crire" (Typewriter) elles envoient ce qu'elles enverraient normalement sur une machine � �crire. Quand on les positionne sur autre chose, les caract�res alternatifs sont envoy�s.
Dans ce cas "nouvelle ligne" veut dire une ligne nouvelle d�marrant sur le bord gauche en dessous de la ligne en cours. Sous Linux et en C "nouvelle ligne" (NL) peut avoir une signification diff�rente : le caract�re de saut de ligne LF qu'on appelle aussi nouvelle ligne ou NL. C'est parce que dans les fichiers texte Linux, le caract�re LF veut dire "une nouvelle ligne commence ici" et donc on l'appelle NL. Normalement, un LF (NL) envoy� � un terminal ne fait que descendre le curseur d'une ligne par rapport � l'endroit o� il se trouvait et ne donne pas une nouvelle ligne.
Si le param�tre Auto New Line (nouvelle ligne automatique) est positionn�, la situation "normale" ci-dessus est annul�e et une nouvelle ligne physique est cr��e sur l'�cran en recevant un LF de l'h�te. C'est exactement ce qu'on veut sous Linux. Sauf que (quand Auto New Line est positionn�) la touche Retour (ou Entr�e) envoie une s�quence CR LF � l'h�te (pour les Wyse et les VT100, mais pour les VT420 ??). Puisque Linux utilise LF comme marqueur de "nouvelle ligne" dans les fichiers, Linux n'aimerait recevoir qu'un LF (et pas un CR LF). L'option "New Line" est par cons�quent rarement utilis�e. � la place, les traductions n�cessaires sont effectu�es par le pilote du port s�rie par d�faut. C'est comme si on envoyait la commande "stty onlcr icrnl" mais vous n'avez pas besoin de le faire puisque c'est le comportement par d�faut.
Cela est simplement un autre type de "nouvelle ligne automatique". Quand un caract�re CR (retour chariot) est re�u, une action LF (saut de ligne) est ajout�e ce qui r�sulte en l'affichage d'une nouvelle ligne. Puisque Linux marque les fins de lignes par LF, cette option n'est pas utilis�e.
Si ce param�tre est d�sactiv�, tout caract�re DEL re�u par le terminal est ignor�. S'il est activ�, DEL effectue un retour en arri�re destructif. Les caract�res NULL sont en g�n�ral ignor�s dans n'importe quel cas. Les caract�res DEL et NULL sont parfois utilis�s ensemble pour faire du remplissage. Voyez Remplissage.
On l'appelle aussi passage automatique (Auto Wrap, Auto Wraparound). Qu'arrive-t-il quand on atteint le bord droit de l'�cran (colonne 80, etc.) et que l'h�te n'a pas envoy� de caract�re retour (ou autre) ? Si le passage � la ligne est activ�, le reste de la ligne s'affiche alors sur la ligne suivante, etc. Sinon, le reste de la ligne est perdu et n'est pas affich� � l'�cran. Toute application qui se respecte devrait envoyer des caract�res "retour" pour que le passage s'effectue avant d'atteindre le bord de l'�cran. Cependant une commande de copie brute (et d'autres situations) peut ne pas le faire, il est donc en g�n�ral mieux de positionner le passage � la ligne.
Pour un �cran de 80 colonnes, la plupart des terminaux ne passent � la ligne que si le 81�me caract�re venant de l'h�te est un caract�re graphique (imprimable). Cela autorise les cas o� le 81�me caract�re venant de l'h�te peut �tre un "retour" ou "nouvelle ligne" (caract�res non graphiques) qui veut dire que l'application g�re bien le passage � la ligne et le terminal n'a pas besoin d'intervenir.
Le d�filement {Scrl} est quand toutes les lignes de l'�cran se d�placent vers le haut ou vers le bas. On parle aussi de "panoramique" (pan), ce qui comprend un mouvement sur les c�t�s. Dans le d�filement ordinaire, les lignes disparaissent vers le bas ou vers le haut de l'�cran et de nouvelles lignes envoy�es par l'h�te apparaissent sur le bord oppos� (haut ou bas). Il y en a trois sortes : doux, par sauts ou instantan�. Le d�filement instantan� n'est pas vraiment un d�filement puisqu'il y a remplacement instantan� d'une page �cran par une nouvelle (bien que certaines lignes du nouvel �cran puissent provenir de l'�cran pr�c�dent). Le d�filement par sauts est quand les nouvelles lignes arrivent en sautillant les unes apr�s les autres [ NdT : en fait, elles arrivent une � la fois, mais la tentation �tait trop forte ;-) ]. Le d�filement doux {Smth} est quand le texte se d�place � une vitesse soutenue vers le haut ou vers le bas. Si la vitesse de d�filement douce est suffisamment lente, on peut lire les lignes qui apparaissent alors qu'elles sont encore en train de bouger (en mouvement).
Le d�filement doux sur les terminaux lents �tait utile autrefois puisqu'on pouvait continuer � lire alors que l'affichage d�filait. Mais avec les vitesses de transfert plus rapides, le d�filement par sauts est si rapide qu'on ne perd que peu de temps en attendant l'apparition du nouvel affichage. Puisque la lecture d'un texte qui d�file prend l�g�rement plus de temps que la lecture d'un texte fixe, on peut en fait perdre plus de temps si on s�lectionne un d�filement doux.
Si on d�sactive le d�filement automatique {Autoscrl}, le nouveau texte venant de l'h�te doit aller quelque part, alors il est mis en haut de l'affichage. Si l'ancien texte n'est pas effac�, le nouveau texte se m�lange (de fa�on insens�e) � l'ancien. Si le vieux texte est effac�, le nouveau texte sort alors de son contexte. Conservez donc le d�filement automatique.
Voyez pages et pages (d�finition) pour avoir une explication sur les pages. Quand la page courante est pleine (la derni�re ligne est termin�e), est-ce que la page doit d�filer, ou est-ce qu'une nouvelle page doit �tre cr��e (laissant la page pr�c�dente stock�e dans la m�moire d'affichage du terminal) ? Si le param�tre {Autopage} est positionn�, une nouvelle page est cr��e. Puisque vous n'utilisez probablement pas les pages, vous devriez s�rement d�sactiver ce param�tre.
Ce sont les touches nomm�es F1, F2, etc. Sur les vieux terminaux elles s'appellent peut-�tre PF1, PF2, etc. o� le P veut dire (P)rogrammable. Certains claviers ont les deux. On peut programmer (red�finir) ces touches pour envoyer une cha�ne d'octets d�finie par l'utilisateur. On peut souvent les "programmer" facilement en utilisant un certain menu de configuration {FKey}. Sur certains terminaux, on peut aussi sp�cifier o� la cha�ne est envoy�e quand on appuie sur la touche. En mode "normal" l'appui sur la touche ressemble � la frappe d'une cha�ne au clavier. En mode "local" l'appui sur la touche envoie la cha�ne au terminal (comme si le terminal �tait en mode local). On peut utiliser cela pour envoyer des s�quences d'�chappement au terminal pour le configurer d'une mani�re sp�ciale. En mode "lointain" la cha�ne est toujours envoy�e sur le port s�rie vers l'ordinateur h�te (m�me si le terminal est en mode local).
Certaines options ne concernent que le cas du mode par blocs. Cette option est utile puisqu'elle fournit des formulaires et retire une charge � l'h�te en transmettant par rafales. Mais c'est plus compliqu� � configurer et ce n'est donc pas beaucoup utilis�.
En mode par blocs, certaines parties de l'�cran concernent le texte des formulaires et sont donc prot�g�es en �criture "Prot" {WPRT}. Des options peuvent faire que les caract�res dans ces parties apparaissent assombris, en vid�o inverse {WPRT Rev} et/ou soulign�s {WPRT Undrln}. {WPRT Intensity} (l'intensit�) peut �tre sombre, normale ou m�me vierge (invisible).
Est-ce que le texte prot�g� en �criture (le texte d'origine du formulaire) doit �tre envoy� � l'h�te lors de la transmission d'un bloc : {Send All} ou est-ce que le texte prot�g� en �criture est aussi prot�g� en lecture : {Send Erasable} ?
Doit-on envoyer l'�cran entier ou simplement la partie qui d�file ? {Send Area}. L'envoi doit-il s'arr�ter quand la position courante du curseur est atteinte ? Si {Xfer Term} est mis sur Cursor, seules les donn�es sur l'�cran jusqu'au curseur sont envoy�es.
Quel est le symbole de d�limitation � ajouter � un bloc de donn�es ? {Blk End} ou � la fin d'une page {Send Term}inaison.
Il y a divers types de blocages. L'un est le clavier bloqu� � cause du contr�le de flux. Voyez blocage du clavier. Un autre blocage {Feature Lock} est celui qui emp�che l'ordinateur h�te de modifier la configuration du terminal en envoyant certaines s�quences d'�chappement au terminal. Placer un tel verrou peut provoquer des comportements inattendus quand les applications enverront des s�quences d'�chappement qui seront ignor�es par le terminal. Tous les param�tres de configuration ne sont pas verrouill�s. Sauf si vous avez une bonne raison de le faire, vous ne devriez pas activer de tels verrous.
Un blocage de touche de fonction emp�chera l'ordinateur de red�finir ce qu'envoie une touche de fonction programmable. Vous voudrez utiliser cela si vous avez programm� quelque chose d'important dans les touches de fonction.
On l'appelle aussi "CRT Saver" (NdT : ce qui revient au m�me). Ceci �teint (ou diminue la luminosit�) de l'�cran quand le terminal n'est pas utilis� pendant un certain temps. La dur�e de vie de l'�cran est prolong�e et cela peut �conomiser de l'�nergie. L'appui sur une touche permettra en g�n�ral de retrouver l'�cran et peut "ex�cuter" cette touche donc il est pr�f�rable d'appuyer sur la touche Shift etc.
Pour les Wyse, s'il n'y a pas d'imprimante reli�e, d�sactivez {Printer Attached}. Ce n'est pas essentiel de faire ceci, mais si vous le faites toute s�quence d'�chappement envoyant du texte � l'imprimante (au lieu du terminal) sera ignor�e.
Param�trer le port de l'imprimante est � peu pr�s la m�me chose (en g�n�ral plus simple) que de param�trer les communications sur le port principal. Il y a quelques options sp�cifiques � l'imprimante. Est-ce une imprimante s�rie ou parall�le ? Si c'est parall�le, on doit la d�signer comme telle dans la configuration et la connecter sur le port parall�le du terminal (s'il y en a un). Doit-on envoyer un FF (saut de page) � l'imprimante � la fin d'un travail d'impression ? Si {Print Term} est mis sur FF, c'est ce qui se passera.
Il faut �diter plusieurs fichiers pour configurer l'ordinateur pour g�rer le terminal. Si vous avez de la chance, vous ne devrez �diter que /etc/inittab. On fait ce travail d'�dition � partir de la console (ou de n'importe quel terminal qui fonctionne).
Afin de lancer un processus de login sur un port s�rie quand l'ordinateur d�marre (ou change de niveau d'ex�cution) une commande getty doit �tre plac�e dans le fichier /etc/inittab. Getty permet de faire fonctionner (GET) un terminal (TTY). Chaque terminal a besoin de sa commande getty. Il y a aussi au moins une commande getty pour la console dans chaque fichier /etc/inittab. Trouvez-la et ajoutez-y les commandes getty pour les vrais terminaux. Ce fichier peut contenir des lignes d'exemples de commandes getty pour les terminaux texte mises en commentaire, et donc tout ce qu'il vous reste � faire est d'enlever les commentaires (enlevez le # au d�but de la ligne) et de modifier quelques arguments.
Les arguments autoris�s d�pendent du getty que vous utilisez :
Les deux meilleurs getty pour les terminaux reli�s de mani�re directe sont :
Les deux gettys plus appropri�s pour les modems (�vitez-les pour les terminaux) sont :
Un getty simple � utiliser uniquement pour les logins sur la console :
Si vous n'avez pas le getty que vous d�sirez, cherchez-le dans d'autres
distributions et utilisez le programme alien
pour le convertir entre
paquets RPM et Debian. Le code source sur
Metalab (logiciels s�rie).
Si vous n'utilisez pas les lignes de contr�le du modem (par exemple si vous n'utilisez que les 3 conducteurs minimums : transmission, r�ception et masse commune) vous devriez le faire savoir � getty en utilisant un drapeau "local". Le format de celui-ci d�pend du getty que vous utilisez.
Un exemple de ligne dans /etc/inittab :
S1:23:respawn:/sbin/getty -L 19200 ttyS1 vt102
S1 vient de ttyS1. 23 veut dire que getty est lanc� en entrant dans les niveaux d'ex�cution 2 ou 3. respawn veut dire que si getty est tu�, il se relancera automatiquement. /sbin/getty est la commande getty. Le -L veut dire Local (ignorer les signaux de contr�le du modem). -h (non montr� dans l'exemple) permet le contr�le de flux mat�riel (m�me chose que stty crtscts). 19200 est la vitesse de transmission. ttyS1 veut dire /dev/ttyS1 (COM2 sous MS-DOS). vt102 est le type de terminal et ce getty donnera cette valeur � la variable d'environnement TERM. Il n'y a pas de fichiers de configuration. Tapez "init q" sur la ligne de commande apr�s avoir �dit� la ligne de getty et vous devriez apercevoir une invite de login.
Le programme agetty
d�tectera automatiquement la parit� configur�e dans
le terminal. Excpt� si vous utilisez 8bit d'octet de donn�es avec 1-bit de
parit�. Si vous utilisez stty
pour fixer la parit�, agetty
la
d�sactivera automatiquement puisqu'il veut que le bit de parit� passe comme
si c'�tait un bit de donn�e. C'est parce qu'il a besoin d'obtenir le dernier
bit (qui peut �tre un bit de parit�) pendant que vous tapez votre nom de
login afin d'auto-d�tecter la parit�. Donc, si vous utilisez la parit�, ne
l'activez que du c�t� du terminal et laissez agetty
la d�tecter
automatiquement et la positionner sur l'ordinateur. Si votre terminal
supporte la parit� en r�ception, l'invite de login sera brouill�e jusqu'� ce
que vous tapiez quelque chose et que getty positionne la parit�. L'invite
brouill�e repoussera les visiteurs etc. qui essaient de se logger. Cela peut
�tre exactement ce que vous voulez.
Il y a parfois des probl�mes avec l'autodetection de parit�. Cela arrive
car apr�s la premi�re frappe de votre login, agetty
utilise le programme
login
pour finir de vous loguer. Si le premier essai de login �choue,
login
se relance pour s'occuper des �ssais futurs de login (incluant
l'�criture de votre login). Le probl�me est que seulement agetty peut detecter
la parit� tandis que le programme login
ne le fait pas. Donc, si vous
remontez dans le programme login
pour quelque raison que ce soit et que
la parit� n'a pas encore �t� d�tect�e, vous etes en difficult� tant que le
programme login
ne peut pas detecter la parit�. Avec une mauvaise parit�,
login
ne peut pas lire correctement ce que vous �crivez et vous ne pouvez
pas vous loguez. Si votre terminal supporte la r�ception de parit�, vous
continuerez � voir un �cran brouill�.
On peut arriver dans cette "boucle de login" de plusieurs fa�ons. Supposez que
vous tapez une ou deux lettres seulement pour votre login et que vous tapez
Entr�e. Si ces lettres ne sont pas suffisantes pour la detection de parit�,
alors login
se lancera avant que la parit� soit detect�e. Quelque fois ce
probl�me arrive si vous n'avez pas le terminal allum� et connect� quand
agetty
d�marre pour la premi�re fois. Si vous restez bloqu� dans cette
"boucle de login", une solution est d'attendre � peu pr�s une minute, le temps
qu'agetty se relance d� au "timeout".
Malheureusement, agetty
ne peut pas detecter cette parit�. Il (fin 1999)
n'y a pas d'options pour desactiver l'auto-detection de parit� et cela
detectera les parit�s incorrects. Le r�sultat est que le processus de login
sera brouill� et la parit� sera mal regl�. Ainsi il ne parait pas faisable
d'essayer d'utiliser des octets de donn�es de 8-bit avec parit�.
(Ceci est tir� du vieux Serial-HOWTO de Greg Hankins).
Ajoutez des
entr�es pour getty
pour utiliser votre terminal dans le fichier de
configuration /etc/gettydefs
si elles ne sont pas d�j� pr�sentes :
# 38400 bps Dumb Terminal entry DT38400# B38400 CS8 CLOCAL # B38400 SANE -ISTRIP CLOCAL #@S @L login: #DT38400 # 19200 bps Dumb Terminal entry DT19200# B19200 CS8 CLOCAL # B19200 SANE -ISTRIP CLOCAL #@S @L login: #DT19200 # 9600 bps Dumb Terminal entry DT9600# B9600 CS8 CLOCAL # B9600 SANE -ISTRIP CLOCAL #@S @L login: #DT9600
Si vous voulez, vous pouvez faire en sorte que getty
affiche des choses
int�ressantes dans la banni�re de login. Dans mes exemples, je fais afficher
le nom du syst�me et la ligne s�rie. Vous pouvez ajouter d'autres choses :
@B la vitesse courante (�valu�e au moment o� @B est rencontr�).
@D la date courante, au format MM/JJ/AA.
@L la ligne s�rie � laquelle est attach� getty.
@S le nom du syst�me.
@T l'heure courante, au format HH:MM:SS (24 heures).
@U le nombre d'utilisateurs actuellement logg�s. C'est le compte
du nombre d'entr�es dans le fichier /etc/utmp qui poss�dent
un champ ut_name non nul.
@V la valeur de VERSION, donn�e dans les fichiers de valeurs par
d�faut.
Pour afficher un caract�re '@', utilisez soit '\@', soit '@@'.
Quand vous avez fini d'�diter /etc/gettydefs
, vous pouvez v�rifier
que la syntaxe est correcte en faisant :
linux# getty -c /etc/gettydefs
Assurez-vous qu'il n'y a pas de fichier de configuration getty
ou
uugetty
pour le port s�rie auquel est attach� votre terminal
(/etc/default/{uu}getty.ttyS
N ou
/etc/conf.{uu}getty.ttyS
N), car cela entrera s�rement en
conflit avec le lancement de getty
sur un terminal. Enlevez le fichier
s'il existe.
�ditez le fichier /etc/inittab
pour lancer getty
sur le port
s�rie (en mettant les informations correctes pour votre environnement --
port, vitesse et type de terminal par d�faut) :
S1:23:respawn:/sbin/getty ttyS1 DT9600 vt100
Relancez init
:
linux# init q
� ce point, vous devriez voir une invite de login sur votre terminal. Vous devrez peut-�tre appuyer sur Retour pour que le terminal soit attentif.
Le "m" veut dire modem. Ce programme est d'abord destin� aux modems et en mi-1999 ne fonctionnait pas toujours tr�s bien pour les terminaux texte. Il est tr�s mal document� pour les terminaux et vous devrez parcourir beaucoup de documentation sur les modems pour d�terminer comment l'utiliser pour un terminal. Regardez les derni�res lignes de /etc/mgetty/mgetty.config pour avoir un exemple de la configuration d'un terminal. [Note du relecteur : je le trouve au contraire bien document� (janvier 1999) dans man mgetty : un mgetty -r -s 9600 /dev/ttyS0 (par exemple) est suffisant. Le -r indique que la connexion est directe (sans modem).] Ceci sera, esp�rons-le, r�par� dans le futur. Il serait bien d'avoir le m�me getty � la fois pour les terminaux et les modems mais mgetty n�cessite quelques am�liorations avant de convenir pour les deux utilisations.
Il y a � la fois une commande "stty" et une commande "setserial" pour
configurer les ports s�rie. Certains (ou tous les) param�tres stty
n�cessaires peuvent �tre positionn�s gr�ce � getty et il peut ne pas �tre
n�cessaire d'utiliser setserial ; l'utilisation de ces deux commandes peut
donc ne pas �tre n�cessaire. Celles-ci (stty et setserial) param�trent
diff�rents aspects du port s�rie. Stty en fait la plupart tandis que
setserial configure la partie bas niveau comme les interruptions et les
adresses de ports. Pour "sauvegarder" les param�tres, ces commandes doivent
�tre �crites dans certains fichiers (scripts shell) qui sont lanc�s � chaque
d�marrage de l'ordinateur. Les distributions de Linux fournissent souvent un
script shell qui lance setserial
mais en fournissent rarement un qui
lance stty
tant qu'on en aura rarement besoin..
N'utilisez jamais setserial
avec des portables (PCMCIA). setserial
est un programme vous permettant d'indiquer au logiciel pilote l'adresse
d'entr�e/sortie du port s�rie, quelle interruption (IRQ) est positionn�e dans
le mat�riel du port, le type d'UART que vous poss�dez, etc. Il peut aussi
vous montrer comment le pilote est configur� � ce moment. En plus, il peut
faire des requ�tes au mat�riel (si certaines options sont donn�es).
Si vous avez seulement un ou deux ports s�ries, ils seront bien configur�
sans utiliser setserial. Autrement (ou si il y'a des probl�mes avec ce port s�rie) vous devrez utiliser setserial. En plus du manuel de setserial
,
regardez les informations dans /usr/doc/setserial.../
ou autre.
Cela devrait vous indiquer comment setserial se comporte dans votre
distribution de Linux.
Setserial
est souvent lanc� automatiquement au d�marrage par un script
shell. Il ne fonctionnera que si le module s�rie est charg�. Si vous devez
pour une raison ou pour une autre d�charger le module s�rie plus tard, les
modifications faites pr�c�demment par setserial
seront oubli�es.
Setserial
doit donc �tre re-lanc� pour les prendre en compte � nouveau.
En plus de le lancer avec un script de d�marrage, quelque chose semblable �
setserial
se lance quand le module s�rie est charg�. Ainsi quand vous
regardez les messages de d�marrage sur l'�cran il pourra vous sembler �tre
lanc� deux fois, et en fait c'est ce qui s'est pass�.
Setserial peut r�gler le temps que le port restera actif apr�s qu'il soit ferm� (pour sortir les caract�res qui sont encore dans leurs buffers dans la RAM principale). C'est nec�ssaire pour un taux de transferts de 1200 baud ou plus bas. C'est aussi nec�ssaire pour des vitesses plus rapides si il y'a beaucoup de "contr�le de flux" en attente.
Si votre port s�rie est Plug-and-Play, vous devrez peut-�tre consulter d'autres HOWTOs, comme Plug-and-Play et Serial.
Avec les bonnes options, setserial
peut chercher (� une adresse
d'entr�e/sortie donn�e) un port s�rie mais vous devez deviner l'adresse
d'entr�e/sortie. Si vous lui demandez de chercher /dev/ttyS2 par exemple, il
ne cherchera qu'� l'adresse o� il pense trouver ttyS2. Si vous dites �
setserial que ttyS2 est � une adresse diff�rente, alors il cherchera � cette
adresse, etc. Voyez
Recherche.
Setserial ne positionne pas lui-m�me les IRQ ou les adresses d'entr�e/sortie dans le mat�riel du port s�rie. Ceci est fait soit avec des cavaliers, soit par plug-n-play. Vous devez dire � setserial les valeurs m�mes qui ont �t� configur�es dans le mat�riel. N'inventez pas simplement des valeurs dont vous pensez qu'elles font joli en les soumettant � setserial. Cependant, si vous connaissez les adresses d'entr�e/sortie mais pas l'IRQ, vous pouvez demander � setserial de tenter de d�terminer l'IRQ.
Vous pouvez voir une liste des commandes possibles et utilisables (mais pas
les options � une lettre telles que -v pour verbeux -- que vous devriez
normalement utiliser pour d�boguer) en tapant simplement setserial
sans
argument. Notez que setserial nomme une adresse d'entr�e/sortie un "port". Si
vous tapez :
setserial -g /dev/ttyS*
vous verrez quelques informations sur la mani�re dont ce pilote de p�riph�riques est configur� pour vos ports. Ajoutez un "v" � l'option "-g" pour en voir plus. Mais ceci ne vous dira pas si le mat�riel dispose vraiment de ces valeurs. En fait, vous pouvez lancer setserial et assigner une adresse d'entr�e/sortie purement fictive, n'importe quelle IRQ, et tout type d'UART que vous aimeriez avoir. Alors, la prochaine fois que vous lancerez "setserial ...", il affichera ces valeurs fausses sans se plaindre. Notez que les assignations faites par setserial sont perdues quand le PC est �teint donc il est en g�n�ral lanc� automatiquement quelque part � chaque fois que Linux est d�marr�.
Afin de tenter de trouver si vous avez un certain type de mat�riel s�rie,
vous devez d'abord savoir (ou deviner) son adresse d'entr�e/sortie (ou le
pilote de p�riph�rique doit en avoir une adresse d'entr�e/sortie, s�rement
positionn�e pr�c�demment par setserial). Pour tenter de d�tecter le mat�riel
physique, utilisez l'option -v (verbeux) et la commande autoconfig
de
setserial
. Si le message r�sultant montre un type d'UART tel que 16550A,
alors tout est bon pour vous. Si par contre il affiche un type d'UART
"unknown
" (inconnu), alors il n'y a s�rement pas de port s�rie du tout �
cette adresse d'entr�e/sortie. Certains ports s�rie bon march� ne
s'identifient pas correctement donc si vous voyez "unknown
" vous avez
peut-�tre quand m�me un port s�rie � cet endroit.
En plus de faire une auto-d�tection sur le type d'UART, setserial peut aussi
d�terminer automatiquement les IRQs, mais ceci ne fonctionne pas toujours
bien non plus. Dans les versions de setserial >= 2.15, votre dernier test de
recherche peut �tre sauv� et plac� dans le fichier de configuration
/etc/serial.conf
qui sera utilis� au prochain d�marrage de Linux. Le
script qui lance setserial
au d�marrage ne fait g�n�ralement pas de
recherche, mais vous pouvez le modifier pour qu'il le fasse. Voyez la section
suivante.
Oui, mais... Votre distribution doit deja le faire au d�marrage. Mais vous pouvez le customiser. C'est facile � faire avec setserial < 2.15. Ajoutez simplement quelques lignes au fichier qui lance setserial au d�marrage. Voyez vieille m�thode de configuration : �dition d'un script. Par exemple, pour ttyS3 vous ajouteriez :
/sbin/setserial /dev/ttyS3 auto_irq skip_test autoconfig
au fichier qui lance setserial au d�marrage. Faites ceci pour chaque port s�rie que vous voulez auto-configurer. Assurez-vous de donner un nom de p�riph�rique qui existe vraiment sur votre machine. Dans certains cas ca ne marchera pas bien � cause du mat�riel, donc vous pouvez lui assigner un irq et/ou un type d'uart. Par exemple:
/sbin/setserial /dev/ttyS3 irq 5 uart 16550A skip_test
Pour les versions >= 2.15 (� condition que votre distribution ait inclus la modification, Redhat ne l'a pas fait), il est plus difficile de le faire puisque le fichier qui lance setserial au d�marrage, /etc/init.d/setserial ou autre n'a pas �t� pr�vu pour �tre �dit� par l'utilisateur. Il peut ne pas y avoir de commentaires utiles comme il y en avait dans les versions pr�c�dentes.
Quand le noyau charge le module s�rie (ou si le "module" est int�gr� au
noyau) alors seuls ttyS{0-3}
sont auto-d�tect�s et le pilote est
configur� avec les IRQs 4 et 3 (peu importe la configuration r�elle du
mat�riel). Vous le voyez sur un message au d�marrage comme si setserial
avait �t� lanc�. Si vous utilisez 3 ports ou plus, ceci peut engendrer des
conflits d'IRQ.
Pour r�gler de tels conflits en donnant � setserial les vraies IRQs (ou pour
d'autres raisons) il peut y avoir un fichier quelque part qui lance
setserial
� nouveau. Ceci se passe t�t pendant le d�marrage avant que
n'importe quel processus utilise le port s�rie. En fait, votre distribution
peut avoir configur� les choses pour que le programme setserial se lance
automatiquement � partir d'un script au d�marrage. On peut trouver plus
d'informations pour g�rer cette situation dans /usr/doc/setserial.../ ou
autre.
les versions inferieurs � la 2.15 de setserial
, la fa�on pour
le configurer �tait d'�dit� le script shell qui lancait setserial
au d�marrage. Avec la version 2.15 (1999) de setserial
le
script shell n'est pas �dit� mais est lanc� au d�marrage et obtient
ses donn�es � partir d'un fichier de configuration: /etc/serial.conf.
Mais on n'�dite normalement jamais /etc/serial.conf. � la place,
utilisez simplement setserial
sur la ligne de commande.
Normalement, ce que vous avez modifi� avec la commande setserial est sauv�
dans le fichier de configuration (serial.conf) quand vous �teignez
(normalement) ou que vous red�marrez. Ceci ne fonctionne que si
"###AUTOSAVE###" ou similaire se trouve sur la premi�re ligne de serial.conf.
Si vous devez utiliser setserial
de mani�re exp�rimentale et qu'il ne
fonctionne pas correctement, alors n'oubliez pas de le relancer pour que les
param�tres exp�rimentaux ne soient pas sauv�s par erreur. Le fichier le plus
couramment utilis� pour lancer setserial au d�marrage (en restant conforme
avec le fichier de configuration) est maintenant /etc/init.d/setserial
(Debian) ou /etc/init.d/serial (Redhat), ou etc., mais ne devrait normalement
pas �tre �dit� non plus.
Pour d�sactiver un port, utilisez setserial
pour le positionner � "uart
none". Le format de /etc/serial.conf appara�t �tre comme celui des param�tres
plac�s apr�s "setserial" sur la ligne de commande avec une ligne pour chaque
port. Si vous n'utilisez pas autosave, vous pouvez �diter /etc/serial.conf �
la main. Pour la version 2.15, la distribution Debian installe le syst�me
avec la sauvegarde automatique activ�e, mais Redhat 6.0 avait simplement un
fichier /usr/doc/setserial-2.15/rc.serial que vous deviez d�placer dans
/etc/init.d/.
BOGUE : en juillet 1999 il un bogue/probl�me puisqu'avec ###AUTOSAVE### seuls les param�tres de setserial affich�s par "setserial -G /dev/ttyS?" (o� ? vaut 0, 1, 2, ...) sont sauv�s mais pas les autres param�tres. Ceci n'affecte qu'une minorit� d'utilisateurs puisque les param�tres non sauv�s sont de toute fa�on rarement utilis�s. Cela a �t� rapport� comme un bogue et peut �tre r�par� maintenant.
Afin de forcer les param�tres courants positionn�s par setserial � �tre
sauv�s dans le fichier de configuration (serial.conf) sans �teindre la
machine, faites ce qui se passe normalement quand vous �teignez : lancez le
script shell /etc/init.d/{set}serial stop
. La commande "stop"
sauvera la configuration courante mais les ports s�rie continueront de
fonctionner correctement.
Dans certains cas vous pouvez avoir l'ancienne et nouvelle m�thode d'install� mais heureusement juste une d'elles se lance au d�marrage. Debian �tiquette les fichiers obsol�tes avec "...pre-2.15".
Avant la version 2.15 (1999) il n'y avait pas /etc/setserial.conf pour configurer setserial. Ainsi vous devez chercher un fichier qui lance setserial au d�marrage et l'�dit�. S'il n'existe pas, vous devez en cr�er un (ou placer les commandes dans un fichier qui se lance t�t au d�marrage). Si un tel fichier est utilis� en ce moment, il se trouve s�rement dans l'arborescence /etc. Mais Redhat <6.0 l'a mis dans /usr/doc/setserial/ bien que vous deviez le d�placer dans l'arborescence /etc avant de l'utiliser. Vous pouvez utiliser "locate" pour essayer de trouver un tel fichier. Par exemple, vous pouvez taper : locate "*serial*".
Ce que pouvez chercher peut s'appeler rc.serial ou 0setserial (Debian). Si un
tel fichier est fourni, il devrait contenir un certain nombre d'exemples
comment�s. En d�commentant certains d'entre eux et/ou en les modifiant, vous
devriez pouvoir configurer les choses correctement. Assurez-vous que vous
utilisez un chemin valide pour setserial
, et un nom de p�riph�rique
valide. Vous pouvez faire un test en ex�cutant ce fichier � la main (tapez
simplement son nom en tant que super-utilisateur) pour voir si �a fonctionne
bien. Un test comme celui-ci est bien plus rapide que de faire des
red�marrages � r�p�tition pour avoir le bon r�sultat. Bien s�r, vous pouvez
aussi tester une commande setserial
unique en la tapant simplement sur
la ligne de commande.
Le script /etc/rc.d/rc.serial
�tait couramment utilis� dans le pass�.
La distribution Debian a utilis� /etc/rc.boot/0setserial
. Un autre
fichier qui a �t� utilis� est /etc/rc.d/rc.local
mais ce n'est pas
une bonne id�e car il peut ne pas �tre lanc� assez t�t. On a indiqu� que
d'autres processus peuvent essayer d'ouvrir le port s�rie avant l'ex�cution
de rc.local, ce qui entra�ne des �checs de communication s�rie.
Par d�faut, ttyS0 et ttyS2 partagent l'IRQ 4, tandis que ttyS1 et ttyS3 partagent l'IRQ 3. Le partage des interruptions s�rie n'est permis que si : 1. vous avez un noyau 2.2 ou sup�rieur, 2. vous avez compil� le support pour le faire et 3. votre mat�riel s�rie le supporte. Voyez le HOWTO S�rie, sur le partage des interruptions et les noyaux 2.2 et plus.
Si vous n'avez que deux ports s�rie, ttyS0 et ttyS1, cela fonctionne encore puisque les conflits de partage d'IRQ n'existent pas pour des p�riph�riques non existants.
Si vous ajoutez un modem interne et gardez ttyS0 et ttyS1, vous devriez alors tenter de trouver une IRQ non utilis�e et la positionner � la fois sur votre port s�rie (ou carte modem) et ensuite utiliser setserial pour l'assigner � votre pilote de p�riph�rique. Si l'IRQ 5 n'est pas utilis�e par une carte son, ce peut �tre une IRQ utilisable pour un modem. Pour positionner l'IRQ de mani�re mat�rielle vous devrez peut-�tre utiliser isapnp, un BIOS PnP ou modifier Linux pour le rendre PnP. Pour vous aider � d�terminer quelles IRQs sont disponibles, tapez "man setserial" et cherchez, disons "IRQ 11".
stty
effectue la plupart de la configuration du port s�rie mais puisque
les applications (et le programme getty) la g�rent souvent, vous n'aurez
peut-�tre pas besoin de l'utiliser souvent. C'est pratique si vous avez des
probl�mes ou voulez voir comment le port est param�tr�. Essayez de taper
``stty -a'' sur votre terminal/console pour voir les param�tres actuels.
Essayez aussi de taper la commande sans le -a (all = tout) pour obtenir une
liste courte qui montre les param�tres diff�rents de la normale. N'essayez
pas d'apprendre tous les r�glages � moins de vouloir devenir un gourou du
port s�rie. La plupart des valeurs par d�faut conviennent et certains
r�glages ne sont n�cessaires que pour certains terminaux non-intelligents et
obsol�tes fabriqu�s dans les ann�es 1970 (Mais pas apr�s)
Alors que setserial
ne travaille qu'avec les ports s�rie r�els, stty
s'utilise � la fois pour les ports s�rie et pour les terminaux virtuels comme
l'interface texte standard de Linux sur un moniteur de PC. Pour le moniteur
de PC, la plupart des param�tres de stty n'ont pas de signification. Le
changement de la vitesse de transmission, etc. ne semble pas faire grand
chose.
Voici quelques uns des items que stty peut configurer : vitesse
(bits/seconde), parit�, bits par octet, nombre de bits de stop, enlever
le 8�me bit ?, signaux de contr�le du modem, contr�le de flux, signal
d'arr�t, d�limiteurs de fin de ligne, changer la casse, remplissage, sonner
si le tampon d�borde ?, �cho, permettre � des t�ches de fond d'�crire sur le
terminal ?, d�finir des caract�res sp�ciaux (de contr�le, comme quelle touche
presser pour faire une interruption). Voyez la page de manuel de stty
ou la page info pour plus de d�tails. Voyez aussi la page de manuel :
termios
qui couvre les m�mes options que stty mais (en mi-1999) couvre
des possibilit�s que la page de manuel de stty ne mentionne pas. Pour
l'utilisation de certains caract�res sp�ciaux, voyez
caract�res sp�ciaux (de contr�le).
Avec certaines impl�mentations de getty (paquet getty_ps), les commandes qu'on enverrait normalement � stty sont entr�es dans un fichier de configuration getty : /etc/gettydefs. M�me sans ce fichier de configuration, la ligne de commande de getty devrait suffire pour param�trer les choses de sorte que vous n'ayez pas besoin de stty.
On peut �crire des programmes en C qui modifient la configuration de stty etc. Regarder la documentation pour ce faire peut aider quelqu'un � mieux comprendre l'utilisation des commandes stty (et ses nombreux arguments possibles). Le Serial-Programming-HOWTO est utile. La page de manuel de termios contient la description de la structure au sens langage C (de type termios) qui stocke la configuration de stty dans la m�moire de l'ordinateur. Bien des noms de drapeaux dans cette structure C sont quasiment les m�mes (et font la m�me chose) que les arguments de la commande stty.
L'utilisation de stty
pour inspecter ou configurer le terminal que vous
utilisez est facile. Faire ca pour terminal (�tranger) different ou un port
s�rie est d�licat. Par exemple, supposons que �tes sur le moniteur du
PC (tty1) et vouliez utiliser stty
pour le port s�rie ttyS2. Vous devez
utiliser l'op�rateur de redirection <. D'abord, soyez pr�venu que s'il y a
un terminal sur ttyS2 et un shell tourne sur ce terminal, ce que vous verrez
alors sera d�cevant et une tentative de le param�trer sera infructueuse.
Voyez
deux interfaces sur un terminal
pour comprendre ceci.
Tapez ``stty -a < /dev/ttyS2'' pour regarder les param�tres de ttyS2. Utilisez le m�me op�rateur de redirection < pour param�trer ttyS2. Cela fait de ttyS2 l'entr�e standard de stty. Ca donne au programme stty un lien vers le "fichier" ttyS2 donc il doit le "lire". Mais au lieu de lire les octets envoy�s vers ttyS2 comme on pourrait le pr�voir, il utilise le lien pour trouver les param�tres de configuration du port donc il devrait les lire ou les changer. Certaines personnes tentent d'utiliser ``stty ... > /dev/ttyS2'' pour param�trer le terminal. Ceci ne le fera pas. � la place, il prendra le message normal affich� par la commande stty pour le terminal sur lequel vous �tes (tty1) et envoie ce message � ttyS2 mais ne change aucun param�tre pour ttyS2.
Arrive un autre probl�me avec l'op�rateur de redirection. Quelques fois quand on essaye d'utiliser stty, la commande s'arrette et rien ne se passe ( vous n'avez pas de prompt pour une autre commande, m�me apr�s avoir frapper <entr�e>). C'est probablement due au port �tant bloqu� car il attend une ligne de controle modem pour �tre d�clar�. Par exemple, tant que vous n'avez pas parametrer "clocal" pour ignorer les lignes de controles modem, Alors si il n'y a pas de signal CD de d�clar�, le port ne s'ouvrira pas et stty ne fonctionnera pas. Une situation similaire doit exister pour le control de flux materiel. Si le cable du port n'a pas de fils pour la broche qui doit �tre d�clar� donc il n'y a pas besoin d'arreter l'attente.
Une fa�on � essayer pour se passer de cette attente, est d'utiliser un programme sur le port qui le forcera � �tre op�rationnel m�me si les lignes de controles disent le contraire. Ainsi heureusement, ce programme doit parametrer le port donc il n'a plus besoin du signal de controle pour ouvrir: clocal ou -crtscts. Pour se servir de "minicom" pour faire ca, il faut le reconfigurer pour un autre ttyS, etc, et le red�marrer. Puisque vous avez � reconfigurer minicom, c'est plus simple de red�marrer le PC.
Les versions � partir de 1.17 (pas encore sortie en mi-1999) n'auront plus besoin de la redirection (<) mais � la place utiliseront ``stty ... -F /dev/ttyS2'' (ou --file au lieu de -F), etc. Cela devrait forcer le port � s'ouvrir et eviter le second probl�me de redirection.
En utilisant un shell (tel que bash) avec l'�dition de la ligne de commande activ�e, il y a deux interfaces de terminal diff�rentes (ce que vous voyez quand vous tapez stty -a). Quand vous tapez sur la ligne de commande vous avez une interface "brute" temporaire (mode brut, ou "raw") o� chaque caract�re est lu par l'�diteur de ligne de commande au moment o� vous le tapez. Une fois que vous appuyez sur la touche <entr�e>, l'�diteur de ligne de commande sort et l'interface du terminal est modifi�e en interface nominale "am�lior�e" (mode am�lior� ou "cooked") pour le terminal. Ce mode am�lior� dure jusqu'� ce que l'invite suivante soit envoy�e au terminal. Notez qu'on ne tape jamais rien dans ce mode "am�lior�" mais ce qui a �t� tap� en mode raw passe en mode am�lior� d�s qu'on a tap� sur la touche <entr�e>.
Quand une invite est envoy�e au terminal, le terminal passe du mode "am�lior�" au mode "brut" (comme il le fait quand vous d�marrez un �diteur puisque vous d�marrez l'�diteur de ligne de commande). Les param�tres pour le mode "brut" ne sont bas�s que sur les param�tres de base pris � partir du mode "am�lior�". Le mode brut garde ces param�tres mais modifie plusieurs autres param�tres afin de passer en mode "brut". Il n'est pas du tout bas� sur les param�tres utilis�s dans le mode "brut" pr�c�dent. Ainsi si on utilise stty pour modifier les param�tres du mode brut, de tels param�tres seront perdus d�s qu'on appuiera sur la touche <entr�e> sur le terminal qu'on suppose avoir "configur�".
Maintenant, quand on utilise tape stty pour regarder l'interface du terminal, on peut avoir une vue soit du mode am�lior�, soit du mode brut. Vous devez trouver lequel vous regardez. Si vous utilisez stty � partir d'un autre terminal pour vous occuper d'un terminal qui affiche une ligne de commande, vous aurez la vue du mode brut. Tout changement effectu� ne le sera que pour le mode brut et sera perdu quand quelqu'un appuiera sur <entr�e> sur le terminal que vous avez tent� de "param�trer". Mais si vous tapez une commande stty sur votre terminal (sans utiliser < pour la redirection) et ensuite tapez sur <entr�e>, c'est une histoire diff�rente. <entr�e> met le terminal en mode am�lior�. Vos modifications seront sauv�es et seront toujours pr�sentes quand le terminal reviendra en mode brut (sauf, bien s�r, si c'est un param�tre non permis en mode brut).
Cette situation peut cr�er des probl�mes. Par exemple, supposez que vous corrompez votre interface de terminal et que pour la r�cup�rer vous alliez sur un autre terminal et tapiez "stty sane <dev/ttyS1" pour la r�cup�rer. Ceci ne fonctionnera pas ! Bien s�r vous pouvez essayer de taper "stty sane ..." sur le terminal corrompu mais vous ne pouvez pas voir ce qui est tap�. Tout ce qui pr�c�de ne s'applique pas aux terminaux non-intelligents mais aux terminaux virtuels utilis�s sur un moniteur de PC ainsi que sur les terminaux fen�tr�s sous X. En d'autres termes, ceci s'applique � presque tout le monde qui utilise Linux. Heureusement, un fichier qui lance stty au d�marrage s'occupera certainement d'un terminal (ou d'un port s�rie sans terminal) n'ayant aucun shell tournant dessus, donc il n'y a pas de probl�me.
Si vous avez besoin que stty
configure l'interface s�rie � chaque fois
que l'ordinateur d�marre, vous devez mettre la commande stty
dans un
fichier qui sera ex�cut� � chaque d�marrage de l'ordinateur (de Linux). Il
devrait �tre lanc� avant l'utilisation du port s�rie (ce qui comprend le
lancement de getty sur le port). Il y a de nombreux endroits disponibles pour
le mettre. S'il est mis � plus d'un endroit et que vous n'en connaissez (ou
rappelez) qu'un, il y aura s�rement un conflit. Assurez-vous donc de
documenter ce que vous faites.
Un bon endroit pour placer cette commande serait dans le m�me fichier qui lance setserial quand le syst�me d�marre. L'emplacement d�pend des distributions et des versions. Il semblerait mieux de la placer apr�s la commande setserial pour que la partie de bas niveau soit faite en premier. Si vous avez un r�pertoire dans le /etc o� tous les fichiers sont �xecut�s au d�marrage (System V Init), ainsi vous pourriez cr�er un fichier nomm� "stty" dans ce but.
Voyez Terminfo et Termcap (en d�tails) pour une discussion plus d�taill�e sur terminfo. Beaucoup d'applications que vous lancez utilisent la base de donn�es terminfo (anciennement termcap). Celle-ci poss�de une entr�e (ou fichier) pour chaque mod�le ou type (tel que le vt100) de terminal et indique ce que le terminal peut faire, quels codes envoyer pour diverses actions, et quels codes envoyer au terminal pour l'initialiser.
Puisque beaucoup de terminaux (et de PC aussi) peuvent �muler d'autres terminaux et poss�dent des "modes" d'op�ration vari�s, il peut y avoir plusieurs entr�es terminfo parmi lesquelles choisir pour un terminal physique donn�. Ils auront en g�n�ral des noms similaires. Le dernier param�tre de getty (� la fois pour agetty et getty_ps) devrait �tre le nom terminfo du terminal (ou de l'�mulation de terminal) que vous utilisez (comme vt100).
La base terminfo fait plus que simplement sp�cifier de quoi le terminal est capable et de donner les codes � envoyer au terminal pour le faire faire certaines choses. Elle sp�cifie � quoi "gras" ressemblera (sera-ce en vid�o inverse ou en intensit� forte), comment sera le curseur, si les lettres seront noires, blanches ou d'une autre couleur, etc. En terminologie PC on appelle ceci des "pr�f�rences". Elle sp�cifie les codes d'initialisation � envoyer au terminal (analogues aux cha�nes d'initialisation qu'on envoie aux modems). Linux n'envoie pas automatiquement de telles cha�nes au terminal. Voyez cha�ne d'initialisation. Si vous n'aimez pas l'affichage � l'�cran ni son comportement, vous devrez peut-�tre �diter (et ensuite mettre � jour) le fichier terminfo (ou termcap). Voyez compilateur terminfo (tic) sur la mani�re de faire la mise � jour.
Voici deux variables d'environnement pour les terminaux : TERM et TERMINFO, mais vous ne devriez rien avoir � faire avec elles. TERM doit toujours �tre positionn�e au nom du terminal que vous utilisez (comme vt100). Si vous ne connaissez pas son type (nom), voyez quel est le nom terminfo de mon terminal ?. TERMINFO contient le chemin vers la base de donn�es terminfo, mais peut ne pas �tre n�cessaire si la base de donn�es est dans un endroit pr�d�fini (ou TERMINFO peut �tre positionn� automatiquement par un fichier qui est livr� avec votre distribution de Linux). Vous voudrez voir Emplacement des bases de donn�es compil�es.
Heureusement, le programme getty positionne en g�n�ral TERM pour vous juste avant le login. Il utilise juste le type de terminal qui a �t� sp�cifi� sur la ligne de commande de getty (dans /etc/inittab). Cela permet aux applications de trouver le nom de votre terminal et ensuite de regarder les capacit�s du terminal dans la base de donn�es terminfo. Voyez variable TERM pour plus de d�tails sur TERM.
Si votre base de donn�es terminfo ne peut pas �tre trouv�e, vous verrez un message d'erreur � ce propos sur votre terminal. Si cela arrive il est temps de v�rifier o� r�side terminfo et de positionner TERMINFO si n�cessaire. Vous pouvez d�couvrir o� se trouve la base de donn�es terminfo en cherchant un fichier terminfo courant comme "vt100" avec la commande "locate". Assurez-vous que votre terminal est dans cette base de donn�es. Un exemple de positionnement de TERMINFO : export TERMINFO=/usr/share/terminfo (mettez ceci dans /etc/profile ou autre). Si les donn�es concernant votre terminal dans cette base de donn�es ne vous conviennent pas, vous devrez l'�diter. Voyez terminfo et termcap (bref).
Vous avez besoin du nom exact afin de positionner la variable d'environnement
TERM ou pour renseigner getty
. Le m�me nom doit �tre utilis� � la fois
par la base termcap et la base terminfo, vous n'avez donc besoin de le
trouver qu'une seule fois. Un terminal dispose g�n�ralement d'alias mais si
vous trouvez plus d'un nom, utilisez le premier.
Pour le trouver, essayez de regarder le fichier /etc/termcap... (si vous l'avez). Sinon, regardez soit dans l'arborescence terminfo (voyez ref id="tc_compiled_locs" name="emplacement des bases de donn�es compil�es">), soit essayez de trouver le fichier de code source de terminfo (voyez ref id="tc_source_loc" name="emplacements du code sources des bases de donn�es">).
Le fichier de configuration /etc/ttytype est utilis� pour faire la correspondance entre /dev/ttySn et les noms de terminaux comme dans terminfo. tset l'utilise, mais si la variable d'environnement TERM est d�j� positionn�e correctement, alors ce fichier n'est pas n�cessaire. Puisque le getty de Linux positionne TERM pour chaque tty, vous n'avez pas besoin de ce fichier. Dans d'autres syst�mes Unix comme FreeBSD, le fichier /etc/ttys fait la correspondance entre les ttys et bien plus de choses, comme la commande getty appropri�e, et la cat�gorie de connexion (comme "dialup"). Un exemple de ligne pour le ttytype sous Linux : vt220 ttyS1
Par d�faut, l'utilisateur root ne peut pas se logger � partir d'un terminal. Pour permettre cela vous devez cr�er (ou �diter) le fichier /etc/securetty en suivant la page de manuel "securetty". Mais cette utilisation est sp�cifique � la distribution, la Suse n'utilise pas /etc/securetty. Pour restreindre les logins de certains utilisateurs et/ou de certains terminaux etc., �ditez /etc/login.access (cela remplace le vieux fichier /etc/usertty ??). /etc/login.defs d�termine si /etc/securetty doit �tre utilis� et peut �tre �dit� afin que /etc/securetty ne soit pas n�cessaire (ou utilis�). /etc/porttime restreint les heures auxquelles certains ttys et utilisateurs peuvent utiliser l'ordinateur. S'il y a trop de tentatives de login rat�es pour un utilisateur, cet utilisateur peut se voir interdire l'acc�s au syst�me. Voyez la page de manuel "faillog" sur la mani�re de contr�ler cela.
Il y a parfois des commandes qu'on ne veut ex�cuter au d�marrage que pour un certain type de terminal. Faire cela pour la commande stty ne pose pas de probl�mes puisque l'on utilise l'op�rateur de redirection < pour sp�cifier le terminal vers lequel la commande est destin�e. Mais quid des alias de shell ou des fonctions ? Vous aurez envie de cr�er une fonction pour la commande ls qui mettra en couleur la liste des r�pertoires uniquement sur des terminaux couleur ou sur la console. Pour les terminaux monochromes vous voudrez le m�me nom de fonction (mais un corps de fonction diff�rent) qui utilisera des symboles � la place du codage par couleurs. O� mettre de telles d�finitions de fonctions qui doivent �tre diff�rentes pour des terminaux diff�rents ?
Vous pouvez les mettre � l'int�rieur d'op�rateurs "if" dans /etc/profile qui est lu au d�part � chaque fois que quelqu'un se logge. L'op�rateur confitionnel "if" d�finit certaines fonctions etc., seulement si le terminal est d'un type sp�cifique.
Bien que la plupart de ce que fait cet op�rateur if puisse �tre fait dans le fichier de configuration de dircolors, voici un exemple dans le cas du shell bash :
if [ "$TERM" = linux ]; then eval `dircolors`; elif [ "$TERM" = vt220 ]; then ls () { command ls -F $* ; } # pour exporter la fonction ls(): declare -xf ls else echo "De /etc/profile : terminal de type $TERM inconnu" fi
Terminfo (anciennement termcap) est une base de donn�es des capacit�s des terminaux et plus. Pour chaque (enfin presque) mod�le de terminal elle indique aux applications ce que le terminal est capable de faire. Elle indique quelles s�quences d'�chappement (ou caract�re de contr�le) envoyer au terminal afin de faire des choses telles que d�placer le curseur vers un nouvel endroit, effacer une partie de l'�cran, faire d�filer l'�cran, changer de mode, changer l'apparence (couleurs, luminosit�, clignotement, soulignement, vid�o inverse, etc.). � partir de 1980 environ, beaucoup de terminaux supportaient plus d'une centaine de commandes (certaines d'entre elles prenant des param�tres num�riques).
La fa�on dont terminfo donne les information a un programme est par les fonctions "ncurses" que le programmeur met dans un programme C. Par exemple si un programme veut bouger le curseur � la ligne 3, colonne 6, il appelle simplement: move(3,6). La fonction move() (faisant partie de ncurses) sait comment faire pour votre terminal (elle peut lire terminfo). Donc il envoit la sequence d'�chappement appropri�e au terminal qui lui fait faire ce mouvement.
Les abr�viations terminfo sont en g�n�ral plus longues que celles de termcap et il est ainsi plus facile de deviner ce qu'elles veulent dire. Les pages de manuel de terminfo sont plus d�taill�es (et incluent les anciennes abr�viations de termcap). Ainsi, sauf si vous �tes d�j� oblig� de travailler avec termcap, il est sugg�r� que vous utilisiez les fichier terminfo.
La base de donn�es terminfo est compil�e et poss�de ainsi une partie source et une partie compil�e. La vieille base de donn�es termcap ne poss�de qu'une partie source mais cette source peut, gr�ce � une seule commande, �tre � la fois convertie en source terminfo et ensuite compil�e. Vous pouvez ainsi vous en tirer sans avoir le source terminfo puisque le source termcap peut cr�er la base terminfo compil�e. Pour voir un affichage de la base de donn�es pour le terminal que vous utilisez actuellement (y compris un moniteur de PC), tapez "infocmp" et vous devriez voir le "fichier" source terminfo correspondant.
Pour voir si votre terminal (disons vt100) est dans la base de donn�es terminfo, tapez "locate vt100". Si vous ne connaissez pas le nom de votre terminal, explorez la liste des fichiers dans la base de donn�es compil�e ou voyez quel est le nom terminfo de mon terminal ?.
Le fait de taper "locate vt100" peut vous indiquer /usr/lib/terminfo/v/vt100, /usr/share/terminfo/v/vt100, /home/vous/.terminfo/v/vt100 et/ou /etc/terminfo/v/vt100. Tout ceci sont des localisations possibles des fichiers terminfo compil�s. Quoique le r�pertoire /etc/terminfo ne soit pas l'emplacement standard pour ca, avoir quelques types de terminal a cet endroit peut �tre pratique au cas ou le r�pertoire /usr ne soit pas accessible. Par exemple, /usr peut �tre plac� sur un disque ou une partition qui n'ait pas pue �tre mont�e. Normalement, les applications qui utilisent votre base de donn�e terminfo principale sont capables de les trouver si il est mis dans au moin un des emplacements mentionn�s avant. Autrement la variable d'environnement TERMINFO devrait �tre positionn�e sur le chemin vers cette base de donn�es. Exemple : TERMINFO=/usr/share/terminfo.
Si le terminfo compil� se trouve � plus d'un endroit, tout se passe en g�n�ral bien jusqu'� ce que quelqu'un r�cup�re un ou plusieurs fichiers terminfo (d'une distribution plus r�cente, d'Internet, en �ditant la plus vieille, etc.). Le nouveau terminfo doit �tre plac� � tous les emplacements existants (ou les emplacements redondants doivent �tre abolis). Si vous ne vous assurez pas que c'est fait, alors plusieurs applications peuvent se retrouver � chercher et utiliser les anciennes donn�es terminfo (bogu�es) qui existent encore � un emplacement "traditionnel".
Le code source que vous utilisez peut r�sider dans /etc/termcap et/ou dans terminfo.src (ou un autre nom). Voyez les pages de manuel : terminfo(5) ou termcap(5) pour voir le format n�cessaire pour cr�er (ou modifier) ces fichiers source. Le fichier terminfo.src peut se trouver en divers endroits sur votre ordinateur ou peut ne pas �tre inclus dans votre distribution Linux. Utilisez la commande locate pour essayer de le trouver. Il est disponible pour t�l�chargement (sous le nom termtypes.ti) � http://sagan.earthspace.net/terminfo.
Les donn�es des fichiers sources sont compil�es avec le programme "tic" qui est capable de faire les conversions entre les formats termcap et terminfo. Vous pouvez ainsi cr�er une base de donn�es terminfo compil�e � partir d'un source termcap. Le programme d'installation utilis� pour installer Linux a probablement install� les fichiers compil�s sur votre disque dur donc vous ne devez rien compiler sauf si vous modifiez /etc/termcap (ou terminfo.src). "tic" installera automatiquement les fichiers compil�s r�sultant dans un r�pertoire terminfo pr�t � �tre utilis� par les applications.
C'est une bonne id�e de jeter un coup d'oeil � votre entr�e terminfo pour le terminal que vous utilisez (le code source, bien s�r) et de lire les commentaires. Une mani�re rapide de l'inspecter sans les commentaires est de taper simplement "infocmp". Mais les commentaires pourront vous dire des choses sp�ciales sur le terminal comme la mani�re dont vous devez le configurer pour qu'il fonctionne correctement avec la base de donn�es terminfo.
Afin d'�conomiser de l'espace disque, on peut effacer toute la base de donn�es � part les types de terminaux que l'on poss�de (ou dont on pourrait avoir besoin dans le futur). N'effacez aucun termcap pour un "terminal Linux" (la console) ou les entr�es xterm si vous utilisez X Window. Le type de terminal "dumb" peut �tre n�cessaire quand une application ne peut pas d�terminer le type de terminal que vous utilisez. Cela �conomiserait de l'espace disque si les programmes d'installation n'installaient les terminfo que pour les terminaux que vous poss�dez et que vous puissiez obtenir un termcap pour un nouveau terminal sur Internet en quelques secondes.
Malheureusement, il y a un certain nombres de bogues dans les fichiers terminfo et termcap. En plus, bien des d�finitions ne sont pas compl�tes et ne d�finissent pas certaines capacit�s disponibles sur les terminaux. Parfois vous pouvez vous en tirer sans modifier terminfo mais dans d'autres cas vous devez le modifier ou peut-�tre utiliser une autre �mulation qui poss�de un bon terminfo.
Le mauvais �tat des fichiers terminfo fournis est d� � un certain nombre de raisons. L'une d'entre elles est que durant les ann�es 1980, quand on en a �crit beaucoup (souvent au format termcap), les applications n'utilisaient les capacit�s avanc�es des terminaux. Ainsi, si une telle capacit� n'�tait pas dans le fichier termcap (ou terminfo), personne ne se plaignait. Aujourd'hui, les programmes tels que vim utilisent la "colorisation contextuelle" et minicom utilise le code de caract�re graphique du terminal. Ceux-ci ont souvent besoin de plus de d�finitions � ajouter � l'ancien termcap. Ceci peut (ou peut ne pas) avoir d�j� �t� fait.
La plupart des terminaux avaient des bogues mat�riels (dans leur programme interne) qui �taient parfois "r�par�s" en modifiant le termcap. Ensuite, le fabricant pouvait envoyer des puces de remplacement qui r�paraient le bogue. Tous les propri�taires ne passaient pas leur temps � obtenir les puces de remplacement. Ainsi il peut y avoir deux terminfos ou plus pour votre terminal, selon les puces qu'il poss�de. Cette situation n'�tait pas toujours not�e dans le termcap et un seul termcap peut �tre fourni avec Linux. Certains bogues mat�riels pr�sents pour des capacit�s qui n'�taient quasiment jamais utilis�es dans le pass� n'ont s�rement jamais �t� r�par�s. De plus, certaines bogues mat�riels rapport�s peuvent ne jamais avoir �t� r�par�s puisqu'ils n'�taient pas tr�s importants � l'�poque ou que la soci�t� est d�c�d�e, etc.
Pour faire ceci vous avez besoin du manuel de votre terminal indiquant les s�quences d'�chappement qu'il utilise. Les manuels r�cents des ann�es 1990 ne les montrent pas souvent. Vous avez aussi besoin d'un manuel terminfo (ou similaire). Par exemple, afin d'ajouter des capacit�s graphiques vous devez assigner des valeurs aux variables terminfo : enacs, rmacs et smacs en �ditant un fichier source. Alors en utilisant "tic" vous pouvez le compiler. "tic" devrait placer automatiquement le fichier terminfo compil� dans le r�pertoire correct r�serv� � cet usage.
Si vous voulez trouver un meilleur terminfo pour un certain terminal que celui qui est fourni, vous pouvez essayer de chercher sur Internet (mais ce que vous y trouverez peut �tre pire). Si votre nouvelle entr�e terminfo est meilleure que l'ancienne et semble stable (vous l'avez utilis�e pendant un moment sans probl�mes) vous devriez en envoyer une copie au mainteneur de terminfo comme indiqu� au d�but du fichier source de terminfo (ou termcap).
Dans le terminfo sont souvent incluses des cha�nes d'initialisation qu'on peut envoyer au terminal pour l'initialiser. Cela peut modifier l'apparence de l'�cran, changer le mode dans lequel se trouve le terminal et/ou faire que le terminal �mule un autre terminal. Une cha�ne d'initialisation n'est pas envoy�e automatiquement au terminal pour l'initialiser. On pourrait esp�rer que le programme getty le fasse mais s'il le faisait, on pourrait faire un changement de configuration sur le terminal et ce changement ne serait pas pris en compte parce que la cha�ne d'initialisation l'annulerait automatiquement. Vous devez utiliser une commande sur la ligne de commande (ou dans un script shell) pour envoyer la cha�ne d'initialisation telle quelle. De telles commandes sont : "tset", "tput init" ou "setterm -initialize". Parfois il n'y a pas besoin d'envoyer la cha�ne d'initialisation puisque le terminal peut se configurer correctement quand il est allum� (en utilisant les options et pr�f�rences qu'on a sauv�es dans la m�moire permanente du terminal).
La variable d'environnement TERM devrait �tre initialis�e au nom de terminal que vous utilisez. Si TERM n'a pas encore �t� positionn�e et que vous ne connaissez pas le nom de votre terminal, voyez quel est le nom terminfo de mon terminal ?. Elle est normalement positionn�e par le param�tre terminal_type pass� au programme getty (regardez-le dans le fichier /etc/inittab). Ce nom doit se trouver dans la base de donn�es terminfo. Tapez simplement "set" sur la ligne de commande pour voir quelle valeur a TERM (ou tapez : tset -q). Sur la console (moniteur) TERM est positionn� � "linux" qui repr�sente le moniteur du PC �mulant un mod�le de terminal fictif appel� "linux". Puisque "linux" est proche d'un terminal vt100 et que beaucoup de terminaux le sont aussi, l'appellation "linux" fonctionnera parfois comme un recours temporaire sur un terminal texte.
Si on peut connecter plus d'un type de terminal sur le m�me port (/dev/tty...) (par exemple, si un commutateur permet � diff�rents types de terminaux d'utiliser le m�me port s�rie, ou si le port est reli� � un modem que des personnes appellent depuis diff�rents types de terminaux) alors TERM doit �tre positionn� � chaque fois que quelqu'un se connecte sur le port s�rie. Il y a souvent une s�quence d'�chappement de requ�te pour que l'ordinateur puisse demander au terminal de quel type il est. Une autre fa�on est de demander � l'utilisateur de taper (s�lectionner) le type de terminal qu'il ou elle utilise. Vous aurez peut-�tre besoin d'utiliser tset ou d'�crire un petit script shell pour g�rer cela.
Une mani�re est d'utiliser "tset" (voir la page de manuel). tset essaie de d�terminer le nom du terminal � partir du terminal que vous utilisez. Il regarde ensuite les donn�es dans terminfo et envoie une cha�ne d'initialisation � votre terminal. Il peut aussi positionner la valeur de TERM. Par exemple, un utilisateur appelle et se logge. Le script de login .profile est ex�cut� et il contient la commande suivante : eval `tset -s ?vt100`. Ceci fait que : on demande � l'utilisateur s'il ou elle utilise un vt100. L'utilisateur r�pond oui ou bien tape le type de terminal r�el qu'il ou elle utilise. tset envoie ensuite la cha�ne d'initialisation et positionne TERM � ce nom (type) de terminal.
Cette section parle du contr�le de l'interface terminal-ordinateur et/ou du changement de configuration du terminal pendant son utilisation. Elle explique (ou pointe vers des explications sur) la mani�re dont l'utilisateur d'un terminal peut contr�ler et inspecter l'interface, et comment utiliser diverses commandes fournies par le pilote de p�riph�rique. Elle n'explique pas comment utiliser les nombreuses applications, shells ou la plupart des utilitaires Linux. Deux commandes utilis�es couramment sur un terminal sont :
�videmment il faut allumer le terminal pour qu'il fonctionne. Si vous ne voyez pas d'invite de login, appuyez sur la touche "Retour" (ou "Entr�e") plusieurs fois. Saisissez ensuite le nom de votre compte (suivi d'un retour/entr�e) et votre mot de passe quand on vous le demande (suivi aussi d'un retour/entr�e). Prenez garde � ne pas tout taper en lettres majuscules. Si vous le faites, l'ordinateur peut croire que vous avez un vieux terminal qui ne peut pas transmettre de lettres minuscules et le pilote s�rie peut se configurer pour n'envoyer que des lettres majuscules au terminal.
Si rien ne se passe, assurez-vous que l'ordinateur h�te va bien. Si l'ordinateur h�te est �teint (pas de courant), ce que vous tapez sur le clavier du terminal peut appara�tre � l'�cran puisque les broches de transmission et de r�ception sur l'ordinateur peuvent �tre reli�es ensemble, ce qui fait que les caract�res sont retourn�s par un ordinateur "�teint". Si vous ne pouvez pas vous logger quand l'ordinateur fonctionne, voyez r�solution des probl�mes.
En tapant sur la ligne de commande, le shell (tel que le shell Bash) lit ce que vous tapez et y r�agit. Ce que vous tapez passe d'abord par la partie pilote de terminal de votre syst�me d'exploitation. Ce pilote peut traduire certains caract�res (comme changer le caract�re "retour" g�n�r� par la touche "retour" en un caract�re "nouvelle ligne" pour les fichiers Linux). Il reconna�t aussi certains codes de contr�le que vous pourriez taper au clavier comme ^C pour interrompre l'ex�cution d'un programme. Il retourne normalement ce que vous tapez � l'�cran. On peut utiliser stty pour configurer le comportement de ce terminal, ce qui comprend l'arr�t de tout ou partie de cette fonctionnalit�.
Il peut y avoir quelques probl�mes pendant l'utilisation d'emacs et de vi sur certains terminaux.
Si le contr�le de flux logiciel est pr�sent, la commande ^S dans Emacs bloquera l'affichage. La commande ^Q d�bloquera l'affichage. La solution est de relier cette commande � une autre touche dans le fichier de configuration de Emacs.
Vi utilise la touche ESC comme commande pour sortir du mode d'insertion. Si on appuie sur une touche fl�ch�e (touche de curseur) une s�quence d'�chappement (d�marrant par le caract�re ESC) est envoy�e � l'h�te. Vi doit faire la diff�rence entre ces deux significations d'ESC. Un vi intelligent (comme vim) doit �tre capable de d�tecter la diff�rence en regardant le temps entre la touche ESC et celle qui suit. Si il s'agit d'un court d�lai, c'est comme si une touche curseur avait �t� press�e. Utilisez "help cursor-keys" dans vim pour en savoir plus.
Il y'a une autre fa�on d'arranger �a.Sur les terminaux VT on peut faire en sorte que la touche fl�che gauche envoie soit ESC [ D soit ESC O D. Les autres touches fl�ch�es sont similaires mais utilisent A, B et C au lieu de D. Si vous avez des probl�mes, choisissez ESC [ D puisque le "O" dans l'autre alternative peut �tre interpr�t�e comme une commande d'"ouverture de ligne". Le "[" devrait �tre interpr�t� par vi pour dire qu'une touche fl�ch�e a �t� press�e. ESC [ D sera envoy� � condition que le "mode application touches fl�ch�es" (Cursor Key Application Mode) n'ait pas �t� activ�. ESC [ D est normalement la valeur par d�faut donc tout devrait �tre correct. Sauf que de nombreux termcaps contiennent une cha�ne (pas la cha�ne d'initialisation) qui positionne ce que vous voulez �viter : "Mode Application". Les �diteurs peuvent envoyer cette cha�ne au terminal quand ils d�marrent. L�, vous avez des probl�mes.
Cette cha�ne poss�de le code termcap "ks" (smkx dans terminfo) qui veut dire activer les touches de fonctions (et similaires, incluant les touches fl�ch�es). Une application active ces touches en envoyant la cha�ne "ks" au terminal. La personne qui a �crit le termcap a conclu que si une application voulait activer ces touches, elles devraient �tre mises en "Mode Application" puisque c'est une "application", mais vous ne voulez pas cela.
La console Linux n'a pas de cha�ne "ks" pour que vous ne tombiez pas dans ce pi�ge sur la console. Pour d'autres terminaux vous aurez besoin d'�diter termcap (ou terminfo) ou d'utiliser une autre entr�e termcap. Vous devez modifier non seulement la cha�ne "ks" mais aussi les d�finitions termcap de ce qu'elle envoie : kd, kl, kr, ku. Lancez ensuite tic pour l'installer.
Pour vim (VI aM�lior�) il y a une mani�re de le configurer pour qu'il fonctionne correctement avec ESC O D (pour que vous ne deviez pas �diter termcap) : cherchez "vt100-cursor-keys" dans l'aide de vim. Vous pouvez lancer "gitkeys" et ensuite appuyer sur les touches fl�ch�es pour voir ce qu'elles envoient mais on peut les configurer pour qu'elles envoient autre chose quand vous �tes dans un �diteur.
Si ls
met en l'air l'�mulation de votre terminal avec la possibilit� de
couleur, arr�tez-la. ls --color
et ls --colour
utilisent la
possibilit� de couleur. Certaines installations font que ls
utilise la
couleur par d�faut. V�rifiez dans /etc/profile
, etc. s'il y a des
alias pour ls
. Voyez
exemple de fonction ls
pour savoir comment faire pour que ls soit en couleur sur la console et en
noir et blanc sur les terminaux.
Les sympt�mes d'un terminal bloqu� sont que ce que vous tapez ne s'affiche
pas sur le terminal (ou dans certains cas s'affiche mais ne fait rien). Si ce
que vous tapez est invisible (ou ne fait rien) tapez ^Q pour relancer le flux
(si le contr�le de flux l'a stopp�). Le blocage peut aussi venir de
:
envoi d'un binaire au terminal ou
un programme s'est termin� de fa�on anormale
Si vous n'avez fait ni l'un ni l'autre, votre programme
peut alors �tre bogg� ou vous avez int�ragi de mani�re fatale avec lui.
Si vous voulez quitter le programme que vous avez lanc� et que vous ne pouvez pas le faire par les m�thodes normales (certains programmes ont des touches sp�ciales que vous devez taper pour sortir) essayez de le tuer � partir d'un autre terminal en utilisant "top" ou "kill". Si le processus refuse de s'arr�ter, vous pouvez essayer de lui envoyer un signal 9 � partir de top qui devrait le forcer � s'arr�ter. Le type de sortie forc�e "9" peut laisser certains fichiers temporaires qui tra�nent ainsi qu'une interface corrompue. Tuer le shell de login devrait relancer getty avec une nouvelle invite de login.
Les personnes d�butantes sous Linux peuvent sans le faire expr�s appuyer sur Ctrl-S (^S) (ou la touche "Arr�t D�fil") qui bloque l'�cran de mani�re myst�rieuse (bien que ce soit ce que cette touche est suppos�e faire si vous utilisez le contr�le de flux logiciel). Pour retrouver une interaction normale avec l'�cran, pressez Ctrl-Q (^Q). Notez que tout ce qui est tap� durant le "blocage" est ex�cut� mais vous n'en verrez rien avant d'appuyer sur ^Q. Ainsi quand il est bloqu�, ne tapez rien de sp�cial qui pourrait effacer des fichiers etc. L'un des arguments en faveur du contr�le de flux mat�riel est qu'il emp�che de tels blocages.
Cela inclut le cas de l'"affichage bloqu�" = "terminal stopp� net" de la section pr�c�dente.
Quand l'affichage ne semble pas correct, ou quand ce que vous tapez ne s'affiche pas correctement (si m�me un affichage se produit), ou que rien ne se passe quand vous tapez une commande, il y a des chances que vous soyez en face d'une corruption de l'interface du terminal. Dans les cas rares o� la partie mat�rielle du port s�rie elle-m�me serait corrompue, le seul rem�de peut �tre de basculer l'interrupteur (�teindre le PC et red�marrer). Le probl�me peut provenir de choses telles qu'un bogue dans le programme que vous utilisez, une panne mat�rielle (ce qui inclut un d�faut mat�riel obscur avec lequel vous pouvez normalement vivre) ou peut-�tre une configuration incorrecte. Si tout fonctionnait correctement mais que �a va soudainement mal, il se peut que l'interface ait �t� corrompue par une de vos actions. Vous pouvez avoir fait l'une de ces trois erreurs :
Votre terminal modifiera ses caract�ristiques si on lui envoie certaines s�quences d'�chappement ou des caract�res de contr�le. Si vous essayez par inadvertance d'afficher un fichier binaire, il peut contenir par hasard de telles s�quences qui peuvent placer votre terminal dans un mode de fonctionnement �trange voire le rendre inutilisable. Visualisez ou �ditez toujours un fichier binaire avec des programmes faits � cet effet pour que cela n'arrive pas. La plupart des �diteurs et des afficheurs manipuleront les binaires de la bonne mani�re afin de ne pas corrompre l'interface. Certains peuvent afficher un message vous avertissant qu'ils ne peuvent �diter du binaire. Par contre, l'utilisation de "cat ...." ou "cp .... /dev/tty.." o� .... est un fichier binaire enverra le binaire au terminal et risque fortement de g�n�rer des probl�mes.
La corruption peut aussi arriver en utilisant un programme de communication o� un ordinateur distant peut envoyer des donn�es binaires � l'�cran. Il y a de nombreuses autres fa�ons pour lesquelles ces probl�mes peuvent arriver, alors soyez-y pr�par�. M�me un fichier qu'on prend pour un fichier ASCII peut contenir des codes de contr�le ind�sirables.
Pour r�soudre ce probl�me, r�-initialisez le terminal. Vous pouvez essayer de taper soit "reset" soit "setterm -reset" (bien que vous ne puissiez pas voir ce que vous tapez). Ceci enverra la cha�ne de r�-initialisation � partir de l'entr�e du terminal dans la base terminfo. Si la configuration correcte a �t� sauv�e � l'int�rieur du terminal, alors l'appui sur certaine(s) touche(s) (peut-�tre en mode de configuration) peut retrouver ce param�trage. Vous voudrez alors ensuite encore utiliser "reset" pour envoyer la cha�ne d'initialisation si vous l'utilisez pour configurer votre terminal.
De grandes applications (comme des �diteurs) utilisent souvent les commandes stty (ou autres) dans leur code pour modifier de mani�re temporaire la configuration stty pendant que vous utilisez ce programme. Cela peut mettre le pilote de p�riph�rique en mode "brut" pour que chaque caract�re que vous tapez aille directement � l'application. L'�cho de retour que fait le pilote est d�sactiv� pour que tout ce que vous voyez � l'�cran vienne directement de l'application. Ainsi de nombreuses commandes de contr�le (comme ^C) peuvent ne pas fonctionner dans certaines applications.
Quand vous quittez de telles applications, celle-ci remet d'abord en place les param�tres stty aux valeurs qu'ils avaient avant le d�marrage de l'application. Si vous quittez le programme de mani�re anormale (vous pouvez deviner que �a s'est pass� ainsi quand ce que vous tapez ne s'affiche plus � l'�cran) vous risquez d'�tre encore en mode "brut" sur la ligne de commande.
Pour sortir du mode brut et revenir aux param�tres stty normaux, tapez "stty sane". Cependant, vous devez taper ceci juste apr�s un "retour" et le terminer par un "retour". Mais l'appui sur la touche "retour" ne donne pas le r�sultat escompt� puisque le code "retour" n'est plus traduit en caract�res nouvelle ligne que le shell attend. Tapez donc simplement nouvelle ligne (^J) � la place de "retour". L'interface de terminal "sane" peut ne pas �tre exactement la m�me que d'habitude mais elle fonctionne en g�n�ral. "stty sane" peut aussi �tre utile pour sortir d'une interface corrompue par d'autres causes.
Un certain nombre de caract�res de contr�le que vous pouvez taper au clavier sont "attrap�s" par le pilote de terminal et effectuent diverses t�ches. Pour voir ces commandes de contr�le tapez : stty -a et regardez les lignes 2 � 4. Elles sont expliqu�es de mani�re vague dans les pages de manuel de stty. On peut modifier les caract�res ou les d�sactiver en utilisant la commande stty. Ainsi vos caract�res de contr�le peuvent diff�rer de ceux d�crits ci-dessous. On les utilise pour l'�dition de la ligne de commande, l'interruption, le d�filement et pour se d�placer sur le caract�re suivant de mani�re transparente.
Alors que le pilote de terminal poss�de quelques commandes pour l'�dition de la ligne de commande, certains shells poss�dent un vrai �diteur int�gr� (comme "readline" dans le shell Bash). Un tel �diteur est normalement activ� par d�faut donc vous n'avez besoin de rien faire pour l'activer. S'il est disponible vous ne devez pas apprendre les commandes suivantes bien qu'elles fonctionnent souvent en plus de l'�diteur de lignes de commande. Les plus importantes � apprendre sont ^C (interruption), ^D et comment arr�ter le d�filement.
Si ce que vous d�sirez voir d�file hors du bas de l'�cran, vous pouvez emp�cher cela en envoyant un signal d'arr�t "stop" (^S ou Xoff) � l'h�te (� condition que le contr�le de flux Xon-Xoff soit activ�). Envoyez un signal de d�part "start" (^Q ou Xon) pour reprendre. Certains terminaux poss�dent une touche "Pas de d�filement" qui enverra de mani�re altern�e Xoff et Xon ou peut-�tre enverra des signaux de contr�le de flux mat�riel ?? Voici ce que font ctrl-S (^S) et ctrl-Q (^Q) :
Si vous voulez � la fois arr�ter le d�filement et quitter, utilisez ^C. Si vous voulez arr�ter le d�filement pour faire autre chose mais voulez garder le programme qui g�n�rait la sortie en m�moire pour que vous puissiez reprendre le d�filement plus tard, utilisez ^Z pour suspendre.
Une m�thode de d�filement diff�rente est d'envoyer la sortie dans un tube vers un afficheur comme more, less ou most. Cependant, la sortie peut ne pas �tre la sortie standard mais peut �tre la sortie d'erreur que l'afficheur ne reconna�t pas. Pour r�soudre ceci vous pouvez utiliser une redirection "2>&1" pour que l'afficheur fonctionne correctement. Il est souvent plus simple d'utiliser simplement ^S et ^Q sauf si vous devez d�filer en arri�re.
Sur une console PC (qui �mule un terminal), vous pouvez d�filer en arri�re en utilisant Shift-PageHaut. Cela est fr�quemment n�cessaire puisque le d�filement est souvent trop rapide � arr�ter en utilisant ^S. Une fois que vous avez d�fil� en arri�re Shift-PageBas d�filera en avant � nouveau.
^V envoie le caract�re tap� suivant (en g�n�ral un caract�re de contr�le) directement au pilote de p�riph�rique sans action ou interpr�tation. En retour deux caract�res ASCII comme ^C sont affich�s.
Certains fichiers texte sont au format Latin1 sur 8 bits (voyez ensembles de caract�res). Si vous avez un terminal qui n'affiche pas les caract�res Latin1 (ou sur lequel on n'a pas s�lectionn� l'ensemble de caract�res Latin1), un symbole de boulet s'affichera comme un 7, etc. En visualisant des pages de manuel (elles sont en Latin1) vous pouvez passer l'option -7 � man afin de traduire les 7, etc. � quelque chose proche d'un boulet (en ASCII). Y a-t-il des afficheurs qui font ces traductions ??
Ces utilitaires vous fourniront des informations sur l'interface du terminal :
Les param�tres du terminal sont normalement positionn�s une fois quand le terminal est install� en utilisant les proc�dures de configuration du manuel du terminal. Cependant, certains param�tres peuvent �tre modifi�s alors que le terminal est en cours d'utilisation. Vous ne donnez normalement aucune commande "stty" ou "setserial" quand le terminal est en cours d'utilisation car elles causeront certainement des probl�mes � l'interface du terminal. Cependant, vous pouvez faire certaines modifications � l'apparence de l'�cran du terminal ou � son comportement sans d�truire l'int�grit� de l'interface. Parfois ces modifications sont faites automatiquement par les applications et donc vous ne devriez pas avoir besoin de vous en occuper.
Une m�thode directe pour effectuer de telles modifications est d'utiliser la touche de configuration (ou autre) sur le terminal et ensuite d'utiliser les menus pour faire les modifications. Pour cela, vous aurez besoin de bien conna�tre le terminal. Les trois autres m�thodes envoient une s�quence d'�chappement de l'ordinateur vers le terminal pour faire les modifications. Ces trois exemples montrent des m�thodes diff�rentes pour faire cela en positionnant la vid�o inverse :
C'est la commande la plus facile � utiliser. Elle utilise des options longues (mais n'utilise pas les -- normaux devant). Elle consulte la base de donn�es terminfo pour d�terminer le code � envoyer. Vous pouvez modifier la couleur, la luminosit�, la coupure de ligne, la vitesse de r�p�tition du clavier, l'apparence du curseur etc.
La commande "tput" est similaire � "setterm" mais au lieu d'utiliser des mots ordinaires comme arguments, vous devez utiliser les abr�viations utilis�es par terminfo. Beaucoup d'abr�viations sont relativement laconiques et difficiles � retenir.
Dans l'exemple "echo ^[[7m" pour positionner la vid�o inverse, ^[ est le caract�re d'�chappement. Pour le taper, tapez ^V^[ (ou ^V suivi de la touche ESC). Pour utiliser cette m�thode "echo" vous devez trouver quel code utiliser � partir d'un manuel de terminal ou � partir de terminfo ou termcap. Il est plus facile d'utiliser setterm ou tput si vous tapez sur la ligne de commande. Puisque "echo ..." s'ex�cutera plus vite (puisqu'il ne fait de requ�te), il est bon pour �tre utilis� dans les scripts shell lanc�s au d�marrage, etc.
Quand vous �teignez le terminal les modifications que vous avez faites seront perdues (sauf si vous les avez sauv�es dans la m�moire permanente du terminal en allant dans le mode configuration et en les sauvant). Si vous voulez les utiliser � nouveau sans devoir les retaper, mettez les commandes dans un script shell ou cr�ez une fonction shell. Lancez-la ensuite quand vous voulez faire les modifications. Une mani�re de rendre les modifications semi-permanentes est de mettre ces commandes dans un fichier lanc� � chaque fois que vous vous loggez ou que vous d�marrez l'ordinateur.
C'est aussi ce que l'on appelle une "console s�rie". Beaucoup de messages en provenance du syst�me ne sont normalement envoy�s que sur la console (Le moniteur). On peut aussi voir sur un terminal certains messages envoy�s sur la console durant le d�marrage apr�s un d�marrage r�ussi en tapant la commande : dmesg. Si le d�marrage ne r�ussit pas, ceci ne sera d'aucun utilit�. Il est possible de modifier le noyau Linux pour qu'un terminal serve de console et re�oive tous les messages de Linux destin�s � la console. Malheureusement, les messages du BIOS (qui s'affiche sur le moniteur quand un PC est d�marr�) seront perdus puisqu'ils ne seront pas affich�s sur le terminal.
Creer une "console s�rie" veut dire que la console (dans la forme d'un terminal) se trouve maintenant sur un port s�rie. Bien s�r, elle n'aura pas les couleurs, les fontes, les capacit�s graphiques, ni les possibilit�s de red�finition du clavier de la vraie console du PC.
Avant le noyau 2.2, vous deviez patcher le noyau � la main. � partir du noyau 2.2, le support est inclus dans le noyau � condition que ce dernier ait �t� configur� pour cela. Ces deux cas sont trait�s dans les deux sous-sections suivantes :
Les instructions pour faire une console s�rie sont incluses dans la documentation livr�e avec le code source dans le fichier : serial-console.txt. Normalement, le p�riph�rique /dev/console est un lien vers tty0 (la console PC). Pour une console s�rie vous cr�ez un nouveau /dev/console qui est un vrai p�riph�rique (et non pas un lien vers autre chose). Vous devez aussi inclure une d�claration � propos de la console s�rie dans /etc/lilo.conf et ensuite lancer lilo. C'est parce que l'�quivalent de "setserial" doit �tre lanc� pour configurer votre console s�rie avant le chargement du noyau. Voyez la documentation ci-mentionn�e pour plus de d�tails.
Le Linux Journal d'avril 1997 avait un article sur la fa�on d'appliquer une rustine au noyau. Vous ajoutez quelques #define au d�but de src/linux/drivers/char/console.c :
<item> #define CONFIG_SERIAL_ECHO <item> #define SERIAL_ECHO_PORT 0x2f8 /* Serial port address */ Ce qui suit n'�tait pas dans l'article de Linux Journal. Dans les noyaux 2.+ (et pr�c�dents ??) vous avez aussi besoin de positionner la vitesse d'�mission (sauf si 9600 est convenable). Cherchez ces deux lignes : serial_echo_outb(0x00, UART_DLM); /* 9600 baud */ serial_echo_outb(0x0c, UART_DLL); Changez 0x0c dans la ligne ci-dessus en (selon la vitesse que vous d�sirez) : 115200 baud: 0x01 19200 baud: 0x06 2400 baud: 0x30 57600 baud: 0x02 9600 baud: 0x0c 1200 baud: 0x60 38400 baud: 0x03 4800 baud: 0x18
Si vous utilisez la console pour s�lectionner quel syst�me d'exploitation d�marrer (avec LILO), mais que vous voudriez le faire � partir d'un terminal, vous devez ajouter une ligne au fichier /etc/lilo.conf. Voyez la page de manuel de lilo.conf et cherchez la cha�ne "serial=".
Oui, en utilisant un terminal et en le faisant passer pour une console comme indiqu� ci-dessus. Vous aurez sans doute quand m�me besoin d'une carte graphique puisque la plupart des BIOS en ont besoin pour d�marrer le PC. Votre BIOS peut aussi avoir besoin d'un clavier pour d�marrer, ou bien il peut avoir une option gr�ce � laquelle vous pouvez indiquer au BIOS qu'il n'a pas besoin de clavier.
Le paquet "screen
" lance des sessions multiples un peu comme les
terminaux virtuels sur la console : voyez
la console : /dev/tty?. Cependant, ce n'est pas comme les "pages" (
section sur les pages) puisque l'image des pages est
stock�e sur l'ordinateur h�te et non � l'int�rieur du terminal comme elles le
sont avec les "pages".
Pour vous d�logger, tapez soit "logout", soit "exit". Dans certains cas votre demande sera refus�e, mais on devrait vous dire pourquoi. L'une des raisons du refus est que vous n'�tes pas sur le m�me shell que celui avec lequel vous vous �tes logg�. Une autre mani�re de vous d�logger est d'appuyer sur ^D. Puisqu'on utilise aussi ^D � d'autres fins, vous ne voudrez pas forc�ment que cette touche vous d�logge. Si vous positionnez la variable IGNOREEOF dans le shell Bash, alors ^D ne vous d�loggera plus.
Si deux personnes logg�es par l'interm�diaire de terminaux sur le m�me ordinateur h�te d�sirent discuter ensemble, ils peuvent utiliser les programmes "write" ou "talk". Sur Internet, on peut discuter en utilisant le navigateur "lynx".
Pour espionner ce qu'une autre personne fait sur son terminal, utilisez le programme "ttysnoop". Dans "ttysnoop", les deux terminaux ont le m�me �tat et tout ce qui est tap� sur l'un des deux claviers appara�t sur les deux �crans (au m�me endroit). Donc si vous espionnez et ne voulez pas �tre d�tect�, vous ne devriez rien taper. On peut utiliser ttysnoop pour s'entra�ner avec un professeur et un �tudiant assis c�te � c�te, chacun sur son terminal. Le professeur peut regarder ce que tape l'�tudiant et peut corriger les erreurs en tapant correctement. L'�tudiant peut regarder ce que tape le professeur et ensuite le r�p�ter lui-m�me. C'est comme s'ils utilisaient un seul terminal, les deux personnes ayant leurs mains sur le clavier en m�me temps.
Si vous suspectez que le probl�me soit mat�riel, voyez la section r�paration et diagnostic. Si le probl�me concerne le port s�rie lui-m�me, voyez le Serial-HOWTO.
Voici une liste des probl�mes possibles :
Il y a deux cas dans lesquels le terminal se comporte mal. L'un arrive quand il a fonctionn� correctement et s'est mis � mal fonctionner tout � coup. C'est ce dont on parle dans la sous-section suivante. L'autre cas arrive quand les choses vont mal juste apr�s l'installation du terminal. Dans ce cas, vous pouvez passer � la section suivante.
Quand un terminal qui fonctionnait correctement ne tourne tout d'un coup pas bien, il est souvent facile de d�celer le probl�me. Si vous r�fl�chissez � ce qui s'est pass� r�cemment cela vous donnera certainement un indice quant � la cause du probl�me.
Le probl�me peut �tre �vident comme un message d'erreur au d�marrage du terminal. S'il �met un bruit, il a s�rement besoin d'une r�paration. Voyez r�paration et diagnostics. D'abord, r�flechissez � ce que vous avez fait ou modifi� r�cemment car c'est s�rement la cause du probl�me. Est-ce que le probl�me est apparu juste apr�s l'installation d'un nouveau logiciel ou apr�s une modification de configuration ?
Si le terminal ne r�pond pas correctement (s'il r�pond tout court) � ce que vous tapez, vous avez peut-�tre une interface de terminal corrompue.
Si vous venez de relier un terminal � votre ordinateur en suivant les instructions et qu'il ne fonctionne pas, cette section vous concerne. Si un terminal qui fonctionnait correctement auparavant ne fonctionne plus, voyez le terminal fonctionnait. Si vous pr�sumez que le port s�rie de votre ordinateur est d�fectueux, vous pouvez essayer de lancer un programme de test et de diagnostics sur ce port. � pr�sent (juin 1998) il semble que Linux ne dispose pas encore d'un tel programme de diagnostics et vous devrez donc lancer les diagnostics sous MS DOS/Windows. Il y a quelques programmes pour surveiller les diverses lignes s�rie comme DTR, CTS, etc. et qui peuvent vous aider. Voyez surveillance/diagnostic s�rie.
Une mani�re est d'abord de voir si le terminal fonctionne en essayant de copier un fichier vers le terminal (cp mon_fichier /dev/ttyS?) dans la situation la plus simple. Ceci implique la d�sactivation des lignes de contr�le du modem et � une vitesse qui ne n�cessite pas de contr�le de flux (assurez-vous que le contr�le de flux mat�riel est d�sactiv�). Si cette copie fonctionne, compliquez alors un petit peu la situation et voyez si �a fonctionne encore, etc., etc. Quand le probl�me appara�t juste apr�s avoir fait une modification, alors ce changement est s�rement la cause du probl�me. En fait, il est plus efficace (mais plus compliqu�) de sauter de la situation simple � � peu pr�s la moiti� de la configuration finale pour que le test �limine � peu pr�s la moiti� des causes possibles restantes pour le probl�me. R�p�tez alors cette m�thode pour le test suivant. De cette mani�re il ne faudrait que dix tests environ pour trouver la cause sur un millier de causes possibles. Vous devriez vous �carter un peu de cette m�thode en vous basant sur des intuitions et des indices.
Un bon terminal d�marre en g�n�ral en affichant quelques mots � l'�cran. Si ces mots ne donnent aucun message d'erreur, le terminal va probablement bien. S'il n'y aucun signe de courant (aucune lumi�re n'est allum�e, etc.), r�enfoncez le c�ble d'alimentation des deux c�t�s. Assurez-vous qu'il y ait du courant sur la prise murale (ou au bout du cordon d'alimentation). Essayez un autre cordon si vous en avez un. Assurez-vous que le terminal est allum� et que son fusible n'a pas saut�. Un �cran blanc (ou sombre) peut parfois �tre r�par� simplement en tournant les molettes de luminosit� et de contraste ou par une touche de clavier dans le mode de configuration. Si cela ne fonctionne toujours pas, voyez r�parations et diagnostics pour avoir des astuces sur la r�paration du terminal.
Si le terminal d�marre correctement, mais que vous soup�onnez qu'il y ait un probl�me, mettez-vous en "mode local" o� il fonctionnera comme une machine � �crire et essayez de taper. Voyez mode local.
Si le texte s'affiche normalement sur le terminal puis s'arr�te sans avoir termin� (au milieu d'un mot, etc.) ou si des morceaux de texte manquent, vous avez s�rement un probl�me avec le contr�le de flux. Si vous ne pouvez pas trouver tout de suite ce qui le cause, baissez la vitesse. Si cela l'arrange, c'est s�rement un probl�me de contr�le de flux. Il se peut que le contr�le de flux ne fonctionne pas du tout � cause d'un manque de configuration correcte ou � cause d'un c�blage incorrect (pour le contr�le de flux mat�riel). Voyez contr�le de flux.
Si des caract�rs isol�s manquent, le port s�rie est peut-�tre d�pass� par une vitesse trop �lev�e. Essayez une vitesse plus petite.
Si vous utilisez une vitesse de transmission en dessous de 1200 (tr�s lente, principalement utilis�e par les anciens terminaux � copie papier et les imprimantes) et que le texte est tronqu�, alors le probl�me peut provenir du pilote de p�riph�riques s�rie. Voyez le Printing-HOWTO � la section "p�riph�riques s�rie" sur la mani�re de r�gler ceci.
Utilisez la commande "lsmod" pour voir si le module s�rie est charg�.
Si getty ne peut pas ouvrir et/ou utiliser un port � cause du manque de tension de contr�le de modem positive sur l'une des broches, alors getty peut se terminer. Alors, gr�ce aux instructions dans inittab, getty se relance et essaie encore, uniquement pour �tre termin� � nouveau, etc. etc. Vous pouvez voir un message d'erreur indiquant que, � cause de getty qui se relance trop rapidement, il a �t� temporairement d�sactiv�. Essayez d'utiliser l'option "local" dans getty et/ou de v�rifier les param�tres et les tensions de contr�le du modem.
Une autre cause possible du relancement de getty est qu'une touche du clavier soit enfonc�e, ce qui donne le m�me r�sultat que si la touche �tait maintenue appuy�e en continu. Avec la r�p�tition automatique activ�e, ceci "tape" des milliers de caract�res � l'invite de login. Cherchez un �cran rempli de caract�res identiques (dans certains cas avec deux caract�res diff�rents ou plus).
Si vous pouvez vous logger correctement mais ne pouvez utiliser le terminal il se peut que le d�marrage du shell de login ait reconfigur� le terminal (avec des param�tres incorrects) � cause d'une commande que quelqu'un a mise dans l'un des fichiers qui sont lanc�s quand vous vous loggez, et qu'un shell soit lanc�. Ces fichiers comprennent /etc/profile et /.bashrc. Cherchez une commande commen�ant par "stty" ou "setserial" et assurez-vous qu'elle est correcte. M�me si elle est correcte dans un fichier d'initialisation, elle peut �tre repositionn�e de mani�re incorrecte dans un autre fichier d'initialisation que vous ne soup�onnez pas. Des m�thodes pour revenir sur le syst�me afin de le r�parer et d'utiliser un autre terminal ou console est d'utiliser une disquette de secours ou de taper : "linux single" � l'invite de LILO qui vous mettra en mode utilisateur unique sans lancer les fichiers de d�marrage.
Si vous obtenez une invite de login mais pas de r�ponse (ou peut-�tre une r�ponse embrouill�e) � vos tentatives de login, une cause possible est que la communication se fait mal dans un sens du terminal vers l'ordinateur. Cela peut �tre d� � un connecteur/c�ble mauvais ou mal c�bl�. Si vous n'utilisez pas encore l'option "local" de getty, faites-le afin de d�sactiver les lignes de contr�le du modem. Voyez getty (dans /etc/inittab). Vous pourriez aussi d�sactiver le contr�le de flux mat�riel (stty -crtscts) s'il �tait activ�. Si cela fonctionne maintenant correctement, alors soit les lignes de contr�le de votre modem sont c�bl�es de mani�re incorrecte, soit il y a une erreur dans votre configuration. Certains terminaux permettent le positionnement de valeurs diff�rentes (comme la vitesse de transmission) pour envoyer et recevoir, de sorte que la r�ception soit bonne mais pas l'envoi.
Vous devriez aussi (sur la console) essayer "stty < /dev/ttyS1" (si vous utilisez ttyS1) pour v�rifier qu'il est configur� correctement. Il sera souvent en mode brut (et c'est s�rement bon) avec -icanon et -echo, etc. Si le terminal est configur� de mani�re incorrecte en half-duplex (HDX), alors une partie des caract�res que vous voyez quand vous tapez viennent du terminal lui-m�me. Si les caract�res sont doubl�s, alors les �chos de l'ordinateur sont bons et vous pouvez passer en full-duplex pour corriger ceci. Mais si vous �tes en half-duplex et que vous ne voyez que ce qui semble �tre des "�chos" normaux, ils ne viennent donc pas de l'ordinateur comme ils devraient le faire.
Si vous obtenez un message qui ressemble � "login failed" (le login a �chou�) alors, si vous n'avez fait aucune erreur en tapant ou dans votre mot de passe, il peut y avoir des restrictions sur les logins qui ne vous permettent pas de vous logger. Malheureusement, ce message peut ne pas vous dire pourquoi la tentative a �chou�. Voyez restrictions sur les logins.
Ceci peut-�tre � cause de l'utilisation d'un jeu de caract�res incorrect, des erreurs de transmission dues � des vitesses de connexion trop �lev�es, des vitesses de connexion incompatibles, des parit�s incompatibles ou un nombre de bits par octet incorrect. Si c'est une vari�t� de caract�res �tranges vous avez un jeu de caract�res incorrect ou un bit de haut rang est positionn� par erreur. Si les mots ont des fautes d'orthographe, essayez une vitesse de transmission plus basse. Pour les incompatibilit�s de vitesse de transmission, de parit� ou de bits/caract�re, vous voyez beaucoup d'erreurs "character error" identiques (erreur de caract�re) qui repr�sentent le fait qu'un vrai caract�re ne peut �tre affich� correctement � cause d'une erreur dans la parit� ou la vitesse de transmission.
Si vous utilisez agetty (souvent nomm� simplement getty), le programme agetty d�tectera et positionnera la parit� et/ou les bits/caract�re si vous tapez quelque chose. Essayez-le avec un retour chariot pour voir si cela r�pare quelque chose.
Cela arrive quand rien ne se passe du tout sur le terminal, mais que le terminal semble fonctionner correctement. L'une des premi�res choses � faire est de s'assurer que toutes les connexions c�bl�es sont fermes et reli�es au bon connecteur � la fois sur l'ordinateur et sur le terminal. D'autres causes comprennent du mat�riel ou des c�bles d�fectueux (les c�bles doivent �tre des null-modem), getty ne tournant pas, une diff�rence de vitesse de transmission, un terminal en mode local, etc. � ce point, deux possibilit�s d'approche sont (vous pouvez en suivre plus d'une � la fois) :
Sur la console (ou sur un autre terminal qui fonctionne), utilisez "top" ou "ps -al" pour voir si getty fonctionne sur le port. Ne le confondez pas avec d'autres programmes getty qui tournent sur d'autres ports ou sur les consoles virtuelles. Vous n'obtiendrez pas d'invite de login si getty ne tourne pas.
Un test possible est de tenter la copie d'un court fichier vers le terminal (une bonne id�e serait d'essayer cela au d�but du processus d'installation avant de configurer getty). Utilisez la commande Linux de copie comme ceci : cp nom_fichier /dev/ttyS1. Si cela ne fonctionne pas, utilisez stty pour rendre l'interface aussi simple que possible en d�sactivant tout (comme le contr�le de flux mat�riel : -crtscts ; la parit�, et les signaux de contr�le du modem : clocal). Assurez-vous que les vitesses de transmission et le nombre de bits par octet sont les m�mes. Si rien ne se passe, v�rifiez que le port est vivant avec un voltm�tre gr�ce � la section suivante.
Si vous disposez d'un voltm�tre � port�e de main, v�rifiez qu'il y a une tension n�gative (-4v � -15v) sur la broche 3 (r�ception de donn�es) du c�t� du terminal sur le c�ble null modem. La borne positive du voltm�tre devrait �tre reli�e � une bonne terre (les connecteurs m�talliques sur les extr�mit�s des c�bles ne sont souvent pas reli�s � la terre). S'il n'y a pas de tension n�gative, v�rifiez-la sur la broche de transmission (TxD) sur l'ordinateur (voyez DB9-DB25 pour le brochage). Si elle est pr�sente l� mais pas sur la broche de r�ception (RxD) du terminal, alors le c�ble est mauvais (connexion flottante, c�ble cass� ou le c�ble n'est pas null modem). S'il n'y a pas de tension du c�t� de l'ordinateur, le port s�rie de l'ordinateur est mort. Testez-le avec un programme de diagnostics ou remplacez-le.
Si le port s�rie est vivant, vous pouvez lui envoyer un fichier (avec les contr�les de modem d�sactiv�s) et voyez si quelque chose y arrive. Pour v�rifier qu'un signal est transmis avec un voltm�tre analogique, regardez l'aiguille � -12 V quand la ligne est inactive. Commencez ensuite � envoyer un fichier (ou lancez getty). Vous devriez voir l'aiguille revenir � z�ro et bouger autour de 0 alors qu'elle mesure des moyennes de courte distance sur le flux de donn�es. Vous pouvez aussi le voir sur l'�chelle de courant alternatif � condition que votre voltm�tre dispose d'une capacit� pour bloquer les tensions continues quand vous �tes sur l'�chelle alternative. S'il n'en a pas, alors le -12 V continu en inactif donnera une lecture alternative erron�e. Sans voltm�tre, vous pourriez relier un p�riph�rique que vous savez en bon �tat (comme un autre terminal ou un modem externe) au port s�rie et voir s'il fonctionne correctement.
Vous avez surement mal parametrer les interruptions: Voyez les sections du Serial-HOWTO commen�ant par "Ralentissement:".
Quelques programmes Linux surveilleront les lignes de contr�le du modem et indiqueront si elles sont positives (1) ou n�gatives (0).
Vous les avez peut-�tre d�j�. Sinon, allez � logiciels s�rie. En les utilisant, gardez � l'esprit que ce que vous voyez est l'�tat des lignes sur l'ordinateur h�te. La situation sur le terminal sera diff�rente puisque certains fils sont souvent manquants des c�bles alors que d'autres fils se croisent. En juin 1998, je ne connais aucun programme de diagnostic sous Linux pour le port s�rie.
En mode local, le terminal se d�connecte de l'ordinateur et se comporte comme une machine � �crire (sauf qu'il n'imprime pas sur papier mais sur l'�cran). En revenant en ligne, le terminal se reconnecte � l'ordinateur vous permettant de reprendre les activit�s au point o� vous vous �tiez arr�t� quand vous �tes pass� en mode "local". Ceci est utile � la fois pour tester le terminal et � des fins �ducatives. En mode local vous pouvez taper des s�quences d'�chappement (en commen�ant par la touche ESC) et observer ce qu'elles font. Si le terminal ne fonctionne pas correctement en mode local, il est quasiment certain qu'il ne fonctionnera pas mieux quand il sera reli� � l'ordinateur. Si vous n'�tes pas vraiment s�r de ce que fait une s�quence d'�chappement, vous pouvez l'essayer en mode local. Vous pouvez aussi l'utiliser pour essayer un terminal qui est � vendre. Pour aller en mode local vous devez d'abord entrer en mode de configuration et ensuite s�lectionner "local" dans un menu (ou presser une certaine touche). Voyez aller dans le mode de configuration.
Alors qu'un multim�tre (utilis� comme voltm�tre) peut �tre tout ce dont vous avez besoin pour quelques terminaux, un �quipement de test sp�cial simple a �t� fait pour tester les lignes des ports s�rie. Certains s'appellent "�vasion ..." (breakout, NdT) o� �vasion veut dire sortir des conducteurs d'un c�ble. Ces gadgets poss�dent quelques connecteurs et s'ins�rent dans le c�ble s�rie. Certains poss�dent des points de tests pour y relier un voltm�tre. Certains poss�dent des LEDs qui s'allument quand certaines lignes de contr�le sont activ�es (allum�es). D'autres encore poss�dent des cavaliers pour que vous puissiez relier n'importe quel fil � n'importe quel fil. Certains poss�dent des interrupteurs.
Radio Shack vend (en 1998), un "expert de RS-232" ou "testeur de ligne RS-232" qui v�rifie TD, RD, CD, RTS, CTS, DTR, et DSR. Une lumi�re verte veut dire "allum�" (+12 V) alors que rouge veut dire "�teint" (-12 V). Ils vendent aussi une "bo�te de cavaliers s�rie RS-232" qui permet de relier les broches de la mani�re dont vous le souhaitez.
N'importe quel voltm�tre ou multim�tre, m�me les moins chers qu'on vend pour environ 60 F, devraient fonctionner correctement. Essayer d'utiliser d'autres m�thodes pour tester la tension est compliqu�. N'utilisez pas de diode �lectroluminescente (LED) sauf si on lui adjoint une r�sistance en s�rie pour r�duire la tension sur la diode. On utilise une r�sistance de 470 ohms pour une diode de 20 mA (mais toutes les diodes ne font pas 20 mA). La diode ne s'allumera que pour une certaine polarit� pour que vous puissiez tester les tensions positives ou n�gatives. Personne ne fait un tel gadget pour tester automatiquement les circuits ?? Les sondes logiques peuvent �tre endommag�es si vous essayez de les utiliser puisque les tensions TTL pour lesquelles elles sont faites ne sont que de 5 volts. Tenter d'utiliser une ampoule incandescente de 12 V n'est pas une bonne id�e. Cela ne vous montrera pas la polarit� et � cause du courant de sortie limit� de l'UART, l'ampoule ne s'allumera probablement pas.
Pour mesurer la tension sur un connecteur femelle, vous pouvez enfoncer un trombone d�pli� dans l'ouverture d�sir�e. Le diam�tre du trombone ne doit pas �tre plus grand que les broches afin de ne pas ab�mer le contact. Mettez une pince croco (ou autre) sur le trombone pour vous connecter.
En dernier recours, si vous n'avez pas d'�quipement de test et voulez risquer d'�tre choqu� (ou m�me �lectrocut�) vous pouvez toujours go�ter � la tension. Avant de toucher � l'une des broches de test avec votre langue, testez-les pour vous assurez qu'il n'y a pas de haute tension sur elles. Prenez les deux broches (� la fois) dans une main pour voir si �a vous fait de l'effet. Si ce test vous choque, vous n'aurez s�rement pas envie d'utiliser votre langue.
Pour tester du 12 V, l�chez un doigt et tenez-y une broche de test. Mettez l'autre broche de test sur votre langue. Si la broche sur votre langue est positive, il y aura un go�t reconnaissable. Vous pouvez d'abord essayer ceci avec des piles 4,5 V pour savoir quel go�t �a aura.
La r�paration d'un terminal poss�de beaucoup en commun avec la r�paration d'un moniteur et/ou d'un clavier. Parfois les diagnostics int�gr�s au terminal vous indiqueront � l'�cran ce qui ne va pas. Sinon, par les sympt�mes, on peut souvent isoler le probl�me � l'une des choses suivantes : clavier d�fectueux, �cran mort, panne de l'�lectronique num�rique du terminal. Il est mieux d'avoir un manuel de service, mais m�me si vous n'en avez pas, beaucoup de terminaux peuvent encore �tre r�par�s.
Bigelow, Stephen J. : Troubleshooting & Repairing Computer Monitors, 2�me �dition, McGraw-Hill, 1997. Ne couvre pas l'�lectronique de g�n�ration des caract�res ni le clavier.
La FAQ http://www.repairfaq.org du groupe de nouvelles sci.electronics.repair est longue et compl�te, bien qu'elle ne couvre pas les terminaux en soi. Voyez la section "Moniteurs d'ordinateurs et vid�os" ("Computer and Video Monitors", NdT). La plupart de ces informations peuvent s'appliquer aux terminaux ainsi que dans les sections "tester les capacit�s", "tester les transformateurs", etc. Peut-�tre que dans le futur, les "informations" de r�paration de ce HOWTO consisteront principalement en des liens vers la FAQ ci-dessus (ou un document identique). Une autre source d'informations est l' archive de r�parations de Shuford, archive de posts dans des groupes de nouvelles sur la r�paration des terminaux.
Les �crans utilisent de tr�s hautes tensions jusqu'� 30000 volts pour la couleur (un peu moins pour le noir et blanc). Faites attention de ne pas toucher cette tension si l'�cran est allum� et le couvercle retir�. Cela ne vous tuera probablement pas m�me si vous le faites puisque la somme de courant qu'il peut fournir est limit�. Mais il est possible que cela vous br�le gravement et vous choque, etc. Les hautes tensions peuvent passer � travers des couches d'air et traverser certains isolants, alors gardez vos mains � une distance s�re. Vous devriez remarquer le c�ble � haute tension bien isol� connect� � un bout du tube d'images. M�me quand l'�cran est �teint, il reste suffisamment de tension r�siduelle sur la connexion du c�ble au tube d'images pour vous donner un certain choc. Pour d�charger cette tension quand l'�cran est d�branch�, utiliser un tournevis (poign�e isol�e) avec la lame en m�tal reli� au c�ble de masse du tube d'images par un fil cavalier. N'utilisez pas la masse du chassis.
Les tensions plus basses (quelques centaines de volts) peut �tre encore plus dangereuses parce qu'elles ne sont pas limit�es en courant. Elles sont m�me encore plus dangereuses si vos mains sont mouill�es ou si vous portez un bracelet de montre en m�tal, un anneau ou autre. Dans certains cas rares, des gens en sont morts alors faites attention. Les tensions plus faibles de seulement quelques volts sur les circuits num�riques sont relativement s�rs mais ne touchez � rien (sauf avec un outil bien isol�) sauf si vous savez ce que vous faites.
Si l'affichage est trop faible, augmentez la luminosit� et/ou le contraste en utilisant les molettes � l'ext�rieur de l'unit� (si elles existent). Si la largeur, la hauteur ou le centrage sont incorrects, il y a souvent des molettes de contr�le pour ceux-ci. Sur certains terminaux anciens, on doit presser une touche fl�ch�e (ou autre) en mode de configuration.
Vous aurez peut-�tre besoin d'enlever le couvercle pour faire des ajustements, surtout sur les mod�les anciens. Vous pourriez arranger les choses pour qu'un grand miroir soit en face du terminal afin de voir l'affichage dans le miroir tout en faisant les ajustements. Ce qu'il faut tourner peut se trouver sur un circuit imprim�. Alors qu'un tournevis (peut-�tre avec une t�te Phillips) peut �tre tout ce dont vous avez besoin, les bobines peuvent n�cessiter certains outils sp�ciaux d'alignement de t�l�visions (cl�s en plastique, etc.). Le nom abr�g� de l'ajustement devrait �tre imprim� sur le circuit imprim�. Par exemple, voici de tels noms :
Changer la lin�arit� peut modifier la taille et donc il peut �tre n�cessaire de la r�ajuster. Un terminal qui a �t� stock� pendant quelque temps peut avoir un petit rectangle d'affichage sur l'�cran entour� d'un grand bord noir. S'il est difficile � ajuster, attendez un peu avant de l'ajuster puisqu'il va en r�cup�rer un peu avec l'utilisation (les bords noirs vont r�tr�cir).
Si le terminal a �mis un bruit juste avant de tomber en panne (ou quand vous l'allumez juste apr�s qu'il est tomb� en panne), ce bruit est un indice de ce qui ne va pas. Si vous entendez un cr�pitement ou voyez/sentez de la fum�e, �teignez imm�diatement le terminal pour emp�cher des dommages suppl�mentaires. Le probl�me est s�rement dans l'alimentation en haute tension de plusieurs milliers de volts. Enlevez le couvercle et si le point faible n'est pas �vident, rallumez-le pendant une courte p�riode de temps dans une pi�ce peu �clair�e et regardez les arcs �lectriques. Le c�ble � haute tension (qui court entre le transformateur et le c�t� du tube d'images) peut avoir une isolation d�fectueuse qui provoque des arcs avec la terre. R�parez-le avec de l'isolant haute tension, ou du chatterton �lectrique sp�cial fait pour, disons, 10000 volts.
Le transformateur (haute tension) peut ne faire qu'un cliquetis ou un cr�pitement faible quand il tombe en panne. Vous pouvez ne pas l'entendre jusqu'� ce que vous �teigniez le terminal pendant un moment pour le reposer et l'allumiez ensuite � nouveau. Pour d�terminer la provenance du bruit, vous pouvez utiliser un morceau de tube en caoutchouc (comme on en utilise dans les voitures) comme st�thoscope pour �couter. Mais pendant que vous �coutez le son, le terminal souffre de plus de dommages alors essayez de le trouver rapidement (mais pas rapide au point de risquer d'�tre �lectrocut�).
Un court-circuit dans l'alimentation peut faire sauter un fusible avec un bruit "pop". Le remplacement d'un fusible �clat� peut ne pas r�soudre le probl�me car le m�me court-circuit peut faire �clater le fusible � nouveau. Recherchez les points noircis � cause d'une chaleur trop importante et testez ces composants. Les transistors de puissance court-circuit�s peuvent faire �clater le fusible. On peut les tester avec un v�rificateur de transistors ou m�me avec un ohmm�tre. Utilisez une petite �chelle d'ohms sur un ohmm�tre pour que la tension appliqu�e par l'ohmm�tre soit faible. Ceci r�duira les dommages possibles sur les composants sains caus�s par ce test de tension.
Si le terminal a �t� expos� � l'humidit�, en �tant stock� dans un endroit humide ou pr�s d'une cuisine avec la vapeur de la cuisine, une solution peut �tre de s�cher l'unit�. Chauffer un transformateur "en panne" avec un s�che-cheveux pendant quelques minutes peut le ranimer.
Un �cran vide peut �tre caus� par une personne qui a tourn� le contr�le de luminosit� au plus bas niveau ou par l'�ge. La chose � faire alors est de v�rifier les c�bles pour voir si les connexions sont mal faites ou cass�es. S'il n'y a pas de signe de courant, mettez un nouveau cordon d'alimentation apr�s vous �tre assur� que la prise de courant murale d�livre du courant.
Si vous soup�onnez le clavier, essayez-le sur un autre terminal du m�me type ou mettez un bon clavier. Manipulez les extr�mit�s du c�ble du clavier et la prise. Les fils � l'int�rieur du c�ble peuvent casser, surtout vers leurs extr�mit�s. Si la cassure est v�rifi�e en bougeant le c�ble (et en alternant la panne et la bonne marche du terminal en m�me temps que le mouvement), il faut alors soit obtenir un nouveau c�ble, soit couper le c�ble et ressouder les cassures, etc.
L'une des premi�res choses � faire si le clavier fonctionne est de mettre le terminal en mode local. Si cela fonctionne en local, alors le probl�me vient s�rement de la connexion � l'ordinateur h�te (ou d'une interface incorrecte) ou dans les puces UART du terminal.
En inspectant avec attention les circuits, on peut souvent trouver la cause du probl�me. Regardez les changements de couleurs, les craquelures, etc. Un probl�me intermittent peut se r�v�ler en appuyant sur les composantes avec un stylo � bille (pas la partie m�tallique, bien s�r). Une cassure de la partie conductrice d'un circuit imprim� peut parfois �tre r�v�l�e en tordant le circuit. De la soudure qui semble avoir fait une goutte ou un joint avec un peu de soudure peut avoir besoin d'�tre refaite. La soudure peut faire chauffer les transistors (et d'autres composants) et les endommager, utilisez donc un puits de chaleur si c'est faisable.
Si vous avez une marque de terminal connue, vous pouvez chercher des posts sur les groupes de nouvelles sur l'Internet pour trouver les types de probl�mes les plus fr�quents pour votre terminal et peut-�tre des informations sur la mani�re de les r�parer.
Pour voir si l'�lectronique num�rique fonctionne, essayez (en utilisant un bon clavier) de taper sur le mauvais terminal. Essayez de lire cela en tapant sur un bon terminal (ou sur la console) en utilisant la commande de copie ou avec un programme de communication avec les terminaux comme Minicom. Vous aurez peut-�tre besoin d'appuyer sur la touche retour chariot afin d'envoyer une ligne. On peut demander l'identit�, etc. du mauvais terminal � partir d'un autre terminal. Cela montrera si la communication dans les deux sens fonctionne.
Vous avez de la chance si vous voyez un message d'erreur � l'�cran. Cela arrive en g�n�ral quand vous allumez pour la premi�re fois le terminal.
Ceci veut dire en g�n�ral que le clavier n'est pas branch�, ou que la connexion est branlante. Pour des probl�mes plus s�rieux, voyez claviers.
La NVR est la m�moire non volatile (Non-Volatile RAM, NdT). Ceci veut dire que la NVR, o� sont stock�es les informations de configuration, est corrompue. Le terminal fonctionnera s�rement encore mais la configuration qui avait �t� sauvegard�e la derni�re fois que quelqu'un a configur� le terminal a s�rement �t� perdue. Essayez de refaire la configuration et de la sauver. Cela a des chances de fonctionner. Sur certains terminaux tr�s vieux (d�but des ann�es 1980) il y avait un CMOS aliment� sur pile pour sauver la configuration donc dans ce cas le probl�me peut venir d'une pile morte. Parfois la puce EEPROM (pas besoin de pile) devient mauvaise apr�s trop de sauvegardes. On aura du mal � en trouver. Si vous ne pouvez pas la r�parer vous �tes soit bloqu� avec la configuration par d�faut ou vous pouvez envoyer des s�quences d'�chappement au terminal quand vous le d�marrez ou quand vous essayez de le configurer.
Les capacit�s �lectrolytiques poss�dent une coquille de m�tal et peuvent faiblir ou tomber en panne s'ils restent inutilis�s pendant des ann�es. Parfois le fait de laisser le terminal allum� pendant un certain temps peut aider � les restaurer en partie. Si vous le pouvez, faites faire de l'exercice aux terminaux que vous avez en stock en les allumant pendant quelques instants chaque ann�e ou tous les deux ans.
Les claviers pour terminaux ne sont pas les m�mes que les claviers pour PC. La diff�rence ne r�side pas seulement dans la disposition des touches mais aussi dans les codes g�n�r�s quand on presse une touche. De plus, les claviers pour diverses marques et mod�les de terminaux ne sont pas toujours interchangeables. On obtient parfois un clavier "incompatible" qui fonctionne en partie sur un terminal. Toutes les touches ASCII fonctionneront correctement, mais les touches sp�ciales pour la configuration et la pause ne fonctionneront pas correctement.
La plupart des claviers font simplement un contact entre deux conducteurs quand vous appuyez sur une touche. L'�lectronique � l'int�rieur d'une puce dans le clavier convertit l'�tablissement de ce contact en un code envoy� � travers le c�ble externe du clavier. Au lieu d'avoir un fil (ou conducteur) s�par� allant de chaque touche � la puce, le principe suivant est utilis�. Num�rotez les conducteurs disons de 1 � 10 et de A � J. Par exemple : le conducteur 3 conduit � plusieurs touches et le conducteur B conduit � plusieurs touches, mais seule une touche a les deux conducteurs qui la rejoignent. Quand cette touche est press�e, un court-circuit est �tabli entre 3 et B. La puce ressent ce court-circuit et sait quelle touche a �t� press�e. Un tel principe r�duit le nombre de conducteurs n�cessaire (et r�duit le nombre de broches n�cessaires sur la puce). C'est un principe similaire � ce qu'on appelle un commutateur crois� (crossbar).
Si, � cause d'un d�faut, les conducteurs 3 et 4 sont court-circuit�s alors l'appui sur la touche 3-B court-circuitera aussi 4 et B et la puce croira que les touches 3-B et 4-B ont �t� press�es � la fois. Ceci fera s�rement afficher deux caract�res diff�rents alors que tout ce que vous souhaitiez �tait un caract�re.
Alors que le clavier moderne et le type ancien se ressemblent beaucoup, la m�canique d'op�ration est diff�rente. Les vieux poss�dent des contacts de touches individuels sous le capuchon de chaque touche, chaque contact �tant inclus dans une enveloppe en plastique dur. Les claviers modernes utilisent de grandes feuilles (membranes) en plastique souple de la taille du clavier. Une feuille de plastique avec des trous est prise en sandwich entre deux autres feuilles de plastique contenant des circuits imprim�s (comprenant des points de contact). Quand vous appuyez sur une touche, les deux feuilles "imprim�es" sont press�es l'une contre l'autre � un certain point, ce qui ferme les contacts imprim�s sur les feuilles � ce point.
Si aucune touche ne fonctionne, essayez un autre clavier (si vous en avez un) pour v�rifier que le clavier est effectivement le probl�me. La cause la plus probable est un fil cass� � l'int�rieur du cordon (c�ble) le reliant au terminal. La position la plus probable de la cassure est � l'une des extr�mit�s du cordon. Essayez de manipuler les extr�mit�s du cordon tout en tapant sur une touche pour voir si �a fonctionne de mani�re intermittente. Si vous trouvez un point endommag�, vous pouvez couper attentivement le cordon avec un couteau � l'endroit du point endommag� et �pisser le conducteur cass�. Parfois une simple goutte de soudure fera l'affaire. Scellez le cordon avec du chatterton ou de la colle.
Si tous les caract�res apparaissent en double il n'y a s�rement pas de probl�mes avec le clavier. En revanche, votre terminal a s�rement �t� configur� de mani�re incorrecte en semi-duplex (HDX ou echo local = oui) et chaque caract�re que vous tapez est renvoy� � la fois depuis l'�lectronique � l'int�rieur de votre terminal et depuis votre ordinateur h�te. Si les deux caract�res ne sont pas les m�mes, il peut y avoir un court-circuit � l'int�rieur de votre clavier. Voyez un appui affiche deux caract�res diff�rents.
Si une touche est court-circuit�e il est probable qu'elle tapera un grand nombre de fois le m�me caract�re si la r�p�tition automatique est activ�e. Si plus d'une touche est court-circuit�e, alors la r�p�tition de s�quences de quelques caract�res sera tap�e. Cela peut amener getty � se relancer trop rapidement si cela arrive � l'invite de login. Voyez touche court-circuit�e. La solution est de nettoyer les contacts gr�ce � nettoyage des contacts du clavier.
Si de l'eau ou du liquide aqueux a �t� vers� sur le clavier (ou s'il a �t� expos� � la pluie, une ros�e forte ou � l'humidit�), certaines touches ne fonctionneront pas correctement. L'humidit� peut faire un court-circuit sur une touche (comme si on appuyait dessus tout le temps) et vous pourrez voir l'�cran se remplir avec cette lettre si la r�p�tition automatique est activ�e. S'il est devenu humide et ensuite s�ch� en partie (ou en totalit�), certaines touches pourront ne pas fonctionner � cause de d�p�ts sur la surface des contacts. Sur les types de claviers modernes, on peut facilement s�parer les feuilles de plastique � l'int�rieur et les s�cher/nettoyer. Pour les plus anciens, on peut les laisser s�cher au soleil ou au four (basse temp�rature). Quand c'est sec il faudra peut-�tre nettoyer les contacts comme expliqu� ci-dessous.
Sur certains claviers r�cents, les feuilles de plastique (membranes) sont faciles � enlever pour les inspecter et les nettoyer si n�cessaire. Vous n'avez besoin d'enlever que quelques vis pour s�parer le clavier en deux et obtenir les feuilles. Sur certains vieux clavier IBM les feuilles ne peuvent pas �tre enlev�es sans casser beaucoup de taquets en plastique qu'il faudra r�parer � la colle afin de les remettre (probablement pas la peine de les r�parer). Un tel clavier peut parfois fonctionner en tordant, tournant et/ou pesant sur l'assemblage contenant les feuilles de plastique.
Ce qui suit concerne les vieux claviers qui poss�dent des contacts s�par�s en plastique dur pour chaque touche. Avant de faire tout le travail de nettoyage des contacts �lectriques essayez d'abord de tourner le clavier t�te en bas et bougez les mauvaises touches. Ceci peut aider � d�loger les salet�s, surtout si vous pressez la touche fortement et rapidement pour faire une vibration. (NdT : bien secouer le clavier r�guli�rement fait effectivement tomber toutes les salet�s, miettes de pain, etc. et fait du bien au clavier !) Il est souvent utile d'enfoncer la touche et de l'agiter de bord � bord.
Souvent on peut enlever les capuchons de touches en les d�couvrant vers le haut en utilisant un petit tournevis comme levier tout en emp�chant une inclinaison excessive avec un doigt. Il existe un outil sp�cial appel� extracteur de touches mais vous pouvez vous en passer. (Attention : les capuchons de touches sur les claviers modernes ne se d�couvrent pas.) Le capuchon de touche peut basculer un peu et branler alors qu'il se d�tache. Il peut m�me s'envoler et atterrir par terre. Vous avez alors deux choix sur le nettoyage des contacts : utiliser un vaporisateur de nettoyant de contact directement au-dessus du contact de la touche, ou s�parer le contact de touche et le nettoyer. Un tout autre choix est de remplacer le contact de touche par un nouveau ou un d'occasion.
La vaporisation directe d'un nettoyant de contacts ou autre (obtenu dans un magasin d'�lectronique) au-dessus du contact de la touche est la m�thode la plus rapide mais peut ne pas fonctionner et peut aussi endommager le plastique. Avant de vaporiser, nettoyez la surface pr�s des supports de contacts. Avec le clavier branch� (ou en connectant un ohmm�tre sur les contacts de touches) utilisez le tube livr� avec le vaporisateur pour injecter du nettoyant � l'int�rieur du contact de touche. Ne laissez pas le liquide de nettoyage s'en aller dans les touches voisines o� il pourrait amasser de la poussi�re et s'infiltrer (avec la poussi�re) dans les contacts de touches adjacents. Si vous faites cette erreur, vous pourriez r�parer une touche et abimer les touches voisines. Si cela arrive, faites imm�diatement bouger les touches adjacentes affect�es jusqu'� ce qu'elles fonctionnent correctement.
Vous pouvez basculez le clavier pour que le nettoyant coule � l'int�rieur des contacts. Pour le terminal CIT101e avec un clavier Alps, ceci implique de basculer la rang�e des chiffres vers le plafond. Faites bouger le contact de touche vers le haut et vers le bas avec un stylo ou le manche d'un petit tournevis pour �viter d'avoir du liquide nettoyant toxique sur votre peau (ou portez des gants). Finalement retournez le clavier t�te en bas tout en bougeant la touche pour enlever le nettoyant qui reste. Plus vous injecterez de nettoyant plus vous serez s�r de r�parer la touche mais vous aurez aussi plus de chances d'endommager le plastique ou de contaminer les touches adjacentes, utilisez donc ce que vous jugez n�cessaire pour faire le travail. Une fois que la touche fonctionne correctement, bougez-la de haut en bas encore un peu et testez-la une demi-minute plus tard, etc. pour vous assurer qu'elle fonctionne encore correctement.
Parfois une touche fonctionne tr�s bien quand les contacts � l'int�rieur sont satur�s de liquide de nettoyant de contacts, mais quand le liquide s�che quelques minutes plus tard, le d�p�t r�sultant sur les contacts emp�che un contact correct et la touche fonctionne avec des rat�s (si elle fonctionne). Faire bouger la touche alors que le liquide s�che � l'int�rieur peut aider les choses. Certaines touches poss�dent des contacts presque scell�s � l'int�rieur et donc peu de nettoyant pour contact atteint les contacts. Le nettoyant qui arrive effectivement sur les contacts peut apporter la contamination (le nettoyage autour du haut des touches avant la vaporisation peut aider � minimiser cet effet).
Si vous devez d�sassembler le contact de touche, inspectez-le d'abord pour voir comment il est install� et se s�pare. Parfois on peut enlever le capuchon du contact sans enlever le contact du clavier. Pour ce faire, d�couvrez (ou tirez) le haut du contact de touche apr�s avoir retir� les taquets en plastique fin qui le retiennent. Ne tirez pas trop fort ou vous pourriez casser le plastique fin. Si vous ne pouvez faire cela, vous devrez peut-�tre dessouder le contact et l'enlever afin de le s�parer (ou de le remplacer). Une fois que le contact a �t� s�par�, vous pourrez ne pas encore voir les contacts si les surfaces des contacts sont prises en sandwich (qui se touchent presque). Vous pouvez mettre du nettoyant pour contact sur les contacts en soulevant l�g�rement les surfaces conductrices et en injectant du nettoyant entre elles. Il peut y avoir une sorte d'attache maintenant les surfaces de contact ensemble qui doit �tre enlev�e avant de soulever ces surfaces. Avec du nettoyant sur les contacts, faites-les bouger. Faire basculer le clavier ou le retourner peut aider. Prenez garde de ne pas perdre de petites parties car elles peuvent s'envoler en l'air quand vous enlevez un contact de touche.
Autant que je sache, il n'existe pas de livre satisfaisant sur les terminaux texte (sauf si vous vous int�ressez aux terminaux antiques des ann�es 70).
Le "HANDBOOK..." pr�sente les sp�cifications br�ves de plus de cent mod�les diff�rents de vieux terminaux fabriqu�s au d�but des ann�es 1970 par plus de 60 soci�t�s diff�rentes. Il explique aussi comment ils fonctionnent physiquement mais montre de mani�re incorrecte un diagramme pour un �cran qui utilise une d�viation �lectrostatique du faisceau d'�lectrons (m�me dans les ann�es 1970). Ce livre explique un certain nombre de concepts techniques avanc�s comme le "balayage au hasard" et le "principe de p�n�tration de la couleur".
Le livre "COMMUNICATING..." au contraire du "Handbook..." ignore les d�tails physiques et �lectroniques des terminaux. Il poss�de un chapitre entier sur l'explication des nombres binaires (qui n'est pas n�cessaire dans un livre sur les terminaux puisque cette information est largement disponible par ailleurs). Il semble couvrir principalement les vieux terminaux IBM (surtout les 3270) dans les modes de fonctionnement en bloc et synchrone. Il est de peu d'utilit� pour les terminaux ANSI utilis�s couramment de nos jours sur les syst�mes de type Unix. Bien qu'il en parle un peu, il ne montre les diff�rents syst�mes de c�blage utilis�s pour les relier aux ports s�rie.
Ces chapitres ne couvrent presque rien sur les terminaux eux-m�mes et leurs capacit�s. Par contre, ces chapitres couvrent plut�t la mani�re de configurer l'ordinateur (et le pilote de terminal) pour qu'il fonctionne avec les terminaux. � cause des diff�rences entre les syst�mes Unix, la plupart des informations ne s'appliquent pas � Linux.
Le livre "UNIX POWER TOOLS" poss�de trois chapitres courts sur les terminaux texte. Il couvre moins de choses que ce HOWTO mais donne plus d'exemples pour vous aider.
Le livre "ADVANCED PROGRAMMING...", dans le chapitre 11, ne couvre que le pilote de p�riph�riques du syst�me d'exploitation pour s'occuper des terminaux. Il explique les param�tres qu'on donne � la commande stty pour configurer le terminal.
Le chapitre du livre "ESSENTIAL SYSTEM..." en dit plus sur les terminaux que sur les modems. Il semble bien �crit.
La configuration de l'ordinateur h�te pour les terminaux sur des syst�mes d'exploitation diff�rents de Linux est en g�n�ral largement diff�rente que sous Linux. Voici quelques liens vers des manuels en ligne pour les syst�mes de type Unix :
On les appelle parfois "s�quences de contr�le". Cette section du Text-Terminal HOWTO est incompl�te (et pourra ne jamais �tre compl�te car il y a un grand nombre de s�quences de contr�le). Cette section sert de r�f�rence et appartient peut-�tre vraiment � ce qu'on pourrait appeler "Text-Terminal-Programming-HOWTO" (HOWTO sur la programmation d'un terminal texte).
Un exemple de s�quence d'�chappement ANSI normale est ESC[5B qui d�place le curseur vers le bas de cinq lignes. ESC est le caract�re d'�chappement. Le param�tre 5 est inclus dans la s�quence. Si c'�tait 7 le curseur bougerait vers le bas de sept lignes, etc. Il est facile de comprendre l'explication suivante pour la s�quence : "d�placer le curseur vers le bas de x lignes : ESC[xB". Mais un jargon de commande tel que : "requ�te d'attribut pour p�riph�rique tertiaire" est moins compr�hensible. Cette section essaiera d'expliquer une partie du jargon utilis� dans les commandes de s�quences d'�chappement. Une liste compl�te (comprenant les codes de s�quences d'�chappement pour la norme ANSI) est un projet "qu'on voudrait bien faire". Puisque beaucoup de s�quences d'�chappement font la m�me chose que ce qui est fait en configurant le terminal avec options de configuration, de telles options en s�quences d'�chappement ne seront pas r�p�t�es ici.
Pour avoir une liste de nombreuses s�quences d'�chappement (mais pas toutes) pour divers terminaux, voyez s�quences d'�chappement ; Am�rique du Nord ou s�quences d'�chappement ; Europe. On utilise celles-ci pour �muler un terminal et elles ne sont pas toujours les m�mes que sur le vrai terminal correspondant. Une liste pour les VT (non maintenue) se trouve � FAQ �mulateurs. Cherchez "VT".
Table des codes de contr�le 8 bits DEC (en hexad�cimal). Fonctionne sur les VT2xx ou plus r�cents. CSI est le code le plus courant.
ACRONYME NOM_COMPLET HEXA REMPLACE IND Index (une ligne vers le bas) 84 ESC D NEL Ligne Suivante 85 ESC E RI Index Inverse (une ligne vers le haut) 8D ESC M SS2 D�calage Simple 2 8E ESC N SS3 D�calage Simple 3 8F ESC O DCS Cha�ne de Contr�le P�riph�rique 90 ESC P CSI Introduction S�quence de Contr�le 9B ESC [ ST Terminaison de Cha�ne 9C ESC \
Ces s�quences sont en g�n�ral des requ�tes envoy�es de l'h�te pour demander un rapport du terminal. Le terminal r�pond en envoyant un rapport (en fait une autre s�quence d'�chappement) � l'h�te qui y a int�gr� certaines valeurs indiquant � l'h�te l'�tat en cours du terminal. Dans certains cas un rapport peut �tre envoy� � l'h�te m�me s'il n'a pas �t� demand�. Ceci arrive parfois quand on quitte la configuration. Par d�faut aucun rapport non sollicit� ne devrait �tre envoy�.
Le curseur se trouve � l'endroit o� le prochain caract�re re�u de l'h�te sera affich�. La plupart des mouvements de curseur sont compr�hensibles. "index cursor" (indexer le curseur) veut dire d�placer le curseur vers le bas d'une ligne. Les mouvements du curseur peuvent �tre relatifs � la position en cours comme "d�placer de 4 espaces vers la gauche" ou absolus comme "d�placer � la rang�e 3, colonne 39". Le mouvement absolu s'appelle "positionnement direct du curseur" ou "adressage direct du curseur".
La position d'origine est rang�e 1, colonne 1 (l'origine de l'index est 1). Mais l'emplacement de cette position d'origine � l'�cran n'est pas clair. Si "mode d'origine du curseur", �quivalent � "mode d'origine relatif", est choisi, l'origine se trouve en haut de la partie d�filante (pas forc�ment le haut de l'�cran). Si le "mode d'origine absolu" est choisi (m�me chose que d�sactiver l'un des deux modes de la phrase pr�c�dente) alors l'origine se situe dans le coin en haut � gauche de l'�cran. Sur certains terminaux anciens si le "mode d'origine du curseur" est activ�, cela veut dire que c'est relatif.
Voyez pages pour avoir une explication sur les pages. Il y a un certain nombre de s�quences d'�chappement pour s'occuper des pages. Le texte peut �tre copi� d'une page � une autre et on peut d�placer le curseur de page en page. Le passage d'une page � l'autre peut ou peut ne pas �tre automatique : quand l'�cran est plein (page 1), alors les donn�es suppl�mentaires venant de l'h�te vont sur la page 2. Le curseur peut n'�tre que sur une page � la fois et les caract�res envoy�s au terminal vont l�. Si cette page n'est pas affich�e, le nouveau texte sera re�u par le terminal et ira en m�moire d'affichage, mais vous ne le verrez pas (jusqu'� ce qu'on passe � cette page sur le terminal).
(Une grande partie de cette section se trouve maintenant dans le Serial-HOWTO.) Les terminaux texte sur les syst�mes de type Unix (et sur les PC) sont connect�s en g�n�ral sur un port s�rie asynchrone 232 d'un ordinateur. C'est en g�n�ral un port RS-232-C, EIA-232-D ou EIA-232-E. Ces trois ports sont � peu pr�s identiques. Le pr�fixe originel RS est devenu EIA (Electronics Industries Association) et plus tard EIA/TIA apr�s que EIA se soit alli�e avec TIA (Telecommunications Industries Association). La sp�cification EIA-232 d�crit aussi les communications synchrones mais le mat�riel qui supporte les communications synchrones manque quasiment toujours sur les PC. La d�signation RS est obsol�te mais est toujours utilis�e. On utilisera EIA dans cet article.
Le port s�rie repr�sente plus qu'un simple connecteur physique au dos d'un ordinateur ou d'un terminal. Il comprend l'�lectronique associ�e qui doit produire des signaux conformes � la sp�cification EIA-232. Le connecteur standard poss�de 25 broches, dont la plupart sont inutilis�es. Un connecteur diff�rent ne poss�de que neuf broches. Une broche est utilis�e pour envoyer des octets de donn�es et une autre pour en recevoir. Une autre broche est la masse commune du signal. Les autres broches "utiles" sont principalement utilis�es � des fins de signalisation avec une tension n�gative r�guli�re voulant dire "�teint" et une tension positive r�guli�re voulant dire "allum�".
La puce UART (�metteur-r�cepteur asynchrone universel) fait la plus grande partie du travail. Aujourd'hui, les possibilit�s de cette puce sont en g�n�ral incluses dans une autre puce.
Sur le port s�rie EIA-232, les tensions sont bi-polaires (positives ou n�gatives par rapport � la masse) et devraient �tre de l'ordre de 12 volts en amplitude (certaines font 5 ou 10 volts). Sur les broches d'�mission et de r�ception +12 volts repr�sente le bit 0 (parfois appel� "espace") et -12 volts est le bit 1 (parfois appel� "marque"). On appelle cela la logique invers�e puisque normalement le bit 0 est � la fois faux et n�gatif alors que le 1 est normalement vrai et positif. Bien que les broches de transmission et r�ception soient en logique invers�e, d'autres broches (les lignes de contr�le du modem) sont en logique normale avec une tension positive �tant vraie et une tension n�gative �tant fausse. La tension z�ro n'a aucune signification (sauf qu'elle veut dire en g�n�ral que l'unit� est �teinte).
Une �tendue de tensions est permise. Les sp�cifications disent que l'amplitude d'un signal transmis devrait �tre entre 5 et 15 volts mais ne doit jamais d�passer 25 volts. Toute tension re�ue en dessous de 3 volts est ind�finie (mais certains terminaux consid�reront qu'une tension plus basse est valide). On voit parfois des affirmations erronn�es selon lesquelles la tension est commun�ment 5 volts (ou m�me 3 volts) mais c'est en g�n�ral 11-12 volts. Si vous utilisez un port EIA-422 sur un ordinateur Macintosh comme un EIA-232 (cela demande un c�ble sp�cial) ou un EIA-423 alors la tension sera vraiment 5 volts. La discussion ici suppose que c'est 12 volts. Il y a beaucoup de confusion � propos des tensions sur Internet.
Notez que la logique d'ordinateur normale n'est que de quelques volts (� une �poque, la norme �tait 5 volts), et que si vous essayez d'utiliser un �quipement de test fait pour tester une logique d'ordinateur en 3-5 volts (TTL) sur les 12 volts d'un port s�rie, cela peut endommager l'�quipement de test.
La broche de transmission (TxD) est maintenue � -12 V (marque) comme inactive quand rien n'est envoy�. Pour commencer un octet elle passe � +12 V (espace) pour le bit de d�part et reste � +12 V pendant la dur�e (p�riode) du bit de d�part. Apr�s vient le bit de bas niveau de l'octet de donn�es. Si c'est un bit 0 rien ne change et la ligne reste � +12 V pendant une autre p�riode de bit. Apr�s vient le bit suivant, etc. Finalement, un bit de parit� peut �tre envoy� et ensuite un bit de stop de -12 V (marque). La ligne reste � -12 V (inactive) jusqu'au prochain bit de d�part. Notez qu'il n'y a pas de retour � 0 volts et il n'y a donc pas de moyen simple (sauf avec un signal de synchronisation) pour dire o� finit un bit et o� commence le bit suivant dans le cas o� deux bits cons�cutifs ont la m�me polarit� (tous les deux z�ro ou tous les deux un).
Un deuxi�me bit de stop serait aussi � -12 V, identique au premier bit de stop. Puisqu'il n'y a pas de signal pour marquer la fronti�re entre ces deux bits, le seul effet du deuxi�me bit de stop est que la ligne doit rester inactive � -12 V deux fois plus longtemps. Le r�cepteur n'a aucun moyen de faire la diff�rence entre un deuxi�me bit de stop et un temps d'inactivit� plus long entre les octets. Ainsi les communications fonctionnent bien si une extr�mit� utilise un bit de stop et l'autre extr�mit� utilise deux bits de stop, mais n'utiliser qu'un bit de stop est visiblement plus rapide. Dans de rares cas, un bit de stop et demi est utilis�. Ceci veut dire que la ligne est gard�e � -12 V pendant une p�riode de temps et demie (comme un bit de stop 50 % plus long que la normale).
Les caract�res sont normalement transmis sur 7 ou 8 bits (de donn�es). Une parit� suppl�mentaire peut (ou peut ne pas) y �tre ajout�e, ce qui donne un octet de longueur 7, 8 ou 9 bits. Certains �mulateurs de terminaux et terminaux anciens n'autorisent pas 9 bits. Certains interdisent 9 bits si on utilise deux bits de stop (puisque cela ferait beaucoup trop de bits : 12 bits au total).
On peut mettre une parit� impaire, paire, ou pas de parit� (les parit�s marque et espace peuvent �tre des options sur certains terminaux). Avec une parit� impaire, le bit de parit� est s�lectionn� de telle sorte que le nombre de bit 1 dans un octet, en comprenant le bit de parit�, soit impair. Si un tel octet se d�t�riore par l'inversion d'un bit, le r�sultat est un octet ill�gal de parit� paire. Cette erreur sera d�tect�e et si c'est un octet arrivant au terminal, un symbole caract�re d'erreur appara�tra � l'�cran. La parit� paire fonctionne de mani�re similaire avec tous les octets l�gaux (comprenant le bit de parit�) ayant un nombre de bit 1 pair. Pendant la configuration, le nombre de bits par caract�re signifie en g�n�ral le nombre de bits de donn�es par octet (7 pour de l'ASCII pur et 8 pour les divers codes de caract�res ISO).
Une "marque" est un bit 1 (ou un 1 logique) et un "espace" est un bit 0 (ou un 0 logique). Pour la parit� marque, le bit de parit� est toujours un bit 1. Pour la parit� espace c'est toujours un bit 0. La parit� marque ou espace ne fait que g�cher de la bande passante et devrait �tre �vit�e autant que possible. "Pas de parit�" veut dire qu'aucun bit de parit� n'est ajout�. Pour les terminaux qui n'autorisent pas les octets de 9 bits, il faut s�lectionner "pas de parit�" pour utiliser des codes de caract�res sur 8 bits puisqu'il n'y a pas de place pour le bit de parit�.
Dans la transmission en s�rie des octets par les ports EIA-232, le bit de bas niveau est toujours envoy� en premier. Les ports s�rie sur les PC utilisent des communications asynchrones quand il y a un bit de d�part et un bit de stop pour marquer le d�but et la fin d'un octet. On appelle cela l'encadrement et l'octet encadr� s'appelle parfois un cadre. Au final, 9, 10 ou 11 bits sont envoy�s par octet, 10 �tant le nombre le plus courant. 8-N-1 veut dire 8 bits de donn�es, pas de parit�, 1 bit de stop. Ceci fait en tout 10 bits si on compte le bit de d�part. Un bit de stop est utilis� quasiment partout. � 110 bits/seconde (et parfois � 300 bits/seconde) deux bits de stop �taient autrefois utilis�s mais maintenant le deuxi�me bit de stop n'est utilis� que dans des situations tr�s inhabituelles (ou par erreur puisqu'il semble encore fonctionner correctement de cette mani�re).
Le port s�rie EIA-232 traditionnel est � basse vitesse de mani�re inh�rente, et est s�rieusement limit� en taille (distance). Les publicit�s disent souvent "grande vitesse" mais cela ne peut fonctionner � grande vitesse que sur de tr�s courtes distances comme pour un modem situ� juste � c�t� de l'ordinateur. Tous les fils utilisent un retour de masse commun et donc la technologie en paire torsad�e (n�cessaire � de grandes vitesses) ne peut �tre utilis�e sans mat�riel suppl�mentaire. Cependant certains ordinateurs poss�dent des interfaces plus modernes. Voyez successeurs de EIA-232.
Il est parfois d�cevant que la norme RS-232 de 1969 n'ait pas utilis� la technologie en paire torsad�e qui aurait pu fonctionner � peu pr�s 100 fois plus rapidement. Les paires torsad�es sont utilis�es dans les c�bles t�l�phoniques depuis la fin du 19�me si�cle. En 1888 (il y a plus de 100 ans) la "conf�rence sur le c�ble" a rapport� son attachement � la paire torsad�e (pour les syst�mes t�l�phoniques) et a avanc� ses avantages. Mais plus de 80 ans apr�s cette approbation par la "conf�rence du c�ble", RS-232 n'a pas r�ussi � l'utiliser. Puisque RS-232 �tait au d�part faite pour connecter un terminal � un modem basse vitesse situ� tout pr�s, le besoin de grande vitesse et d'une longueur de transmission plus �lev�e n'a apparemment pas �t� per�u.
Un certain nombre de normes EIA ont �t� �tablies pour des vitesses plus �lev�es et des distances plus grandes en utilisant la technologie en paire torsad�e (�quilibr�e). Une transmission �quilibr�e peut parfois �tre une centaire de fois plus rapide que EIA-232 non �quilibr�e. Pour une vitesse donn�e, la distance (longueur maximale du c�ble) peut �tre beaucoup de fois plus grande avec de la paire torsad�e. Mais les PC continuent d'�tre fabriqu�s avec l'EIA-232 "obsol�te" puisque que cela fonctionne correctement avec les modems reli�s aux lignes t�l�phoniques lentes, et cela fonctionne correctement avec les souris.
Une exception reste l'ordinateur Macintosh d'Apple avec son GeoPort EIA-232/EIA-422 qui fournit de la paire torsad�e (�quilibr�e) pour la transmission et la r�ception. Il utilise un petit connecteur rond "mini-DIN". Il fournit aussi du EIA-232 traditionnel mais seulement � 5 volts (ce qui reste du EIA-232 l�gal). Cependant, � cause du fait que les Mac co�tent plus cher que les PC, on les utilise rarement comme ordinateur h�te pour des terminaux. Certains terminaux r�cents utilisent l'EIA-423 mais cela reste comme de l'EIA-232 non �quilibr� et on peut les relier � un port EIA-232. Cet EIA-423 ne fait que 5 volts, mais les sp�cifications donnent des vitesses plus �lev�es que pour EIA-232 (qui ne sera d'aucune aide sur une grande distance o� c'est le non-�quilibrage qu cause les interf�rences).
L'EIA-530-A (�quilibr� mais peut aussi �tre non �quilibr�) � 2 Mbits/s (�quilibr�) �tait fait pour remplacer EIA-232 mais on en a peu install�. Elle utilise le m�me connecteur � 25 broches que EIA-232. L'interface s�rie � grande vitesse (HSSI = EIA-612/613, High Speed Serial Interface) utilise un connecteur � 50 broches et monte � peu pr�s � 50 Mbits/s mais la distance est limit�e � seulement quelques m�tres. Le Bus S�rie Universel (USB, Universal Serial Bus) est construit dans des puces PCI. Il fait 12 Mbits/s sur une paire torsad�e avec un connecteur � 4 broches (2 c�bles fournissent le courant) mais il est aussi limit� � des distances courtes d'au plus 5 m�tres (cela d�pend de la configuration).
Pour un terminal texte, les vitesses de EIA-232 sont suffisamment rapides mais la longueur de c�ble utilisable est souvent trop courte. La technologie �quilibr�e pourrait r�soudre ce probl�me. La m�thode courante pour obtenir une communication �quilibr�e avec un terminal texte est d'installer deux pilotes de ligne dans la liaison s�rie pour convertir du non �quilibr� en �quilibr� (et vice-versa). Ce sont des appareils sp�cialis�s et ils sont chers si on les ach�te neufs.
Dans EIA-232 il n'y a que deux �tats sur le fil de transmission (ou de r�ception) : marque (-12 V) ou espace (+12 V). Il n'y a pas d'�tat � 0 V. Ainsi une s�quence de bits � 1 est tranmise avec uniquement du -12 V stable sans marqueur d'aucune sorte entre les bits. Pour que le r�cepteur d�tecte les bits individuels il doit toujours disposer d'un signal d'horloge qui est synchronis� avec l'horloge de l'�metteur. De telles horloges g�n�rent un "top" synchronis� avec chaque bit transmis (ou re�u).
En transmission asynchrone, la synchronisation est faite en encadrant chaque octet d'un bit de d�part et d'un bit de stop (fait par le mat�riel). Le r�cepteur attend sur la ligne un bit de d�part et quand il en d�tecte un il lance son top d'horloge. Il utilise ce top d'horloge pour mesurer le temps de lecture des 7, 8 ou 9 prochains bits. (C'est en fait un petit peu plus compliqu� que cela puisqu'on prend en g�n�ral plusieurs mesures pour un bit, ce qui demande des tops suppl�mentaires.) Ensuite le bit de stop est lu, l'horloge s'arr�te et le r�cepteur attend le bit de d�part suivant. Ainsi l'asynchrone est en fait synchronis� pendant la r�ception d'un seul octet mais il n'y a pas de synchronisation entre un octet et l'octet suivant.
L'asynchrone signifie "non synchrone". En pratique, un signal asynchrone repr�sente ce que le port s�rie asynchrone envoie et re�oit qui est un flux d'octets, chacun d'entre eux �tant d�limit� par un bit de d�part et un bit de stop. Le synchrone est � peu pr�s tout le reste. Mais ceci n'explique pas les concepts de base.
En th�orie, synchrone veut dire que les octets sont envoy�s � vitesse constante l'un apr�s l'autre en accord sur un top d'horloge. Il y a souvent un fil ou un canal s�par� pour envoyer le top d'horloge. Les octets asynchrones peuvent �tre envoy�s n'importe quand avec des intervalles de temps vari�s entre les octets (comme quelqu'un qui tape des caract�res sur un clavier).
Il y a des situations limites qu'on doit classer comme synchrones ou asynchrones. Le port s�rie asynchrone envoie souvent des octets dans un flux constant qui en ferait un cas synchrone mais comme il y aura encore les bits de d�part et de stop (ce qui permet de les envoyer de mani�re ind�termin�e) on l'appelle asynchrone. Un autre cas est quand les octets de donn�es (sans auncun bit de d�part ou de stop) forment des paquets avec un espacement erratique entre un paquet et le suivant. On l'appelle synchrone puisque les octets � l'int�rieur de chaque paquet doit �tre transmis de mani�re synchrone.
Ne vous-�tes vous jamais demand� ce qu'on faisait de toutes les broches inutilis�es sur un connecteur 25 broches pour le port s�rie ? La plupart d'entre eux sont utilis�s dans une communication synchrone qu'on impl�mente rarement sur les PC. Il y a des broches pour les signaux de temporisation de synchronisation ainsi que pour un canal inverse synchronis�. La sp�cification EIA-232 est donn�e � la fois pour les communications synchrones et asynchrones mais les PC utilisent une puce UART (�metteur R�cepteur Asynchrone Universel) comme un 16450, un 16550A ou un 16550 et ne peuvent faire de la synchronisation. Pour faire du synchrone on a besoin d'une puce USART ou �quivalente o� le "S" veut dire synchrone. Puisque le synchrone est un march� de niche, un port s�rie synchrone est s�rement assez cher.
� c�t� de la partie synchrone de EIA-232, il y a plusieurs autres normes EIA synchrones. Pour EIA-232, trois broches sur le connecteur sont r�serv�es pour les signaux d'horloge (de temporisation). Parfois c'est le r�l du modem de g�n�rer certains signaux de temporisation rendant l'utilisation de communications synchrones impossibles sans un modem synchrone (ou sans appareil qu'on appelle "�liminateur de modem synchrone" qui fournit les signaux de temporisation).
Bien que peu de ports s�rie soient synchrones, la communication synchrone prend souvent place sur les lignes t�l�phoniques en utilisant des modems qui utilisent la correction d'erreurs V.42. Ceci enl�ve les bits de d�part et de stop et place les octets de donn�es dans des paquets ce qui donne une op�ration synchrone sur la ligne t�l�phonique.
Le mode par blocs est rarement utilis� sous Linux. En mode par blocs, quand quelqu'un tape sur un terminal, le r�sultat est sauv� dans la m�moire du terminal et n'est pas envoy� imm�diatement � l'ordinateur h�te. De tels terminaux poss�dent souvent des possibilit�s d'�dition int�gr�es. Quand l'utilisateur appuie sur certaines touches (comme la touche envoi), ce qui a �t� sauvegard� dans la m�moire du terminal est envoy� � l'ordinateur h�te. Cependant les �diteurs vi et emacs sous Linux r�agissent instantan�ment � l'appui de certaines touches, mais, dans la situation ci-dessus, si on appuie sur de telles touches, rien ne se passera puisque rien n'est envoy� quand on appuie sur une touche. Ainsi l'utilisation d'un terminal en mode par blocs ne permettra pas l'utilisation de tels programmes interactifs. La vieille interface vers les minis IBM utilise le mode par blocs (voyez terminaux IBM) et donc beaucoup de terminaux IBM ne fonctionnent qu'en mode par blocs et sont aussi synchrones (voyez la section synchronisation et synchrone).
Le mode par blocs peut lui-m�me avoir divers sous-modes comme "page" (une page � la fois) et "ligne" (une ligne � la fois). Certains terminaux poss�dent � la fois les modes de transmissions par blocs et les modes traditionnels par caract�res, et on peut passer d'un mode � l'autre. Les terminaux asynchrones poss�dant des modes par blocs sont parmi les HP2622A, VT130, VT131, VT330, VT340 et Visual500. Beaucoup de mod�les de terminaux plus r�cents peuvent �muler le mode par blocs. Les modes par blocs peuvent comprendre une possibilit� de formulaires o� l'ordinateur h�te envoie un formulaire au terminal. L'utilisateur le remplit alors et envoie la touche envoi qui ne renvoie que les donn�es du formulaire � l'ordinateur h�te. Le formulaire lui-m�me (pas les donn�es) est affich� � l'�cran dans des champs prot�g�s qui ne sont pas transmis � l'h�te.
Les modes par blocs enl�vent une bonne partie de la charge sur l'ordinateur h�te, surtout si le mat�riel de l'ordinateur h�te est fait pour les modes par blocs (comme c'est/c'�tait le cas sur les minis IBM). En mode caract�re, chaque caract�re tap� est envoy� imm�diatement sur le port s�rie et en g�n�ral g�n�re une interruption sur l'ordinateur h�te. L'h�te qui re�oit l'octet doit arr�ter tout ce qu'il fait et va chercher ce caract�re depuis le mat�riel du port. M�me avec des UART qui poss�dent des tampons mat�riels FIFO, le d�lai mat�riel ne repr�sente normalement que le temps de transmission de 3 octets, donc une interruption est g�n�r�e � chaque caract�re tap�.
En vrai mode par blocs, un bloc de caract�res long est re�u en n'utilisant qu'une interruption. Si on utilise le mode par blocs avec des ports s�rie FIFO asynchrones, une interruption n'est n�cessaire que tous les 14 octets puisqu'ils ont des tampons mat�riels de 16 octets. Ainsi la plus grande partie de la charge et du co�t de la gestion des interruptions est �limin�e et l'ordinateur a plus de temps � consacrer � d'autres t�ches quand on utilise le mode par blocs.
On fait des �conomies significatives en mode par blocs si le terminal est reli� � son h�te par l'interm�diaire d'un r�seau. Sans le mode par blocs, chaque caract�re (octet) tap� est envoy� dans son propre paquet avec tous les octets d'enveloppe (40 dans un paquet TCP/IP comme ceux utilis�s sur l'Internet). En mode par blocs, un grand nombre de caract�res est envoy� dans un seul paquet.
(Note : le premier couvre bien plus que EIA-232 uniquement.)
Voyez logiciels s�rie pour les logiciels Linux sur les ports s�rie avec getty et les moniteurs de ports.
Voici des notes class�es par marque qui �taient trop sp�cifiques � un certain terminal pour �tre mises autre part dans ce HOWTO. Si vous avez des informations � apporter pour un terminal particulier qui n'est pas couvert autre part, elles pourraient se trouver ici. Divers mod�les et marques ont souvent beaucoup de choses en commun qu'on ne doit �crire qu'� un endroit. Il serait bien d'avoir, pour chaque mod�le de terminal, un grand nombre de liens vers les documentations se rapportant � ce mod�le (avec les s�quences d'�chappement). Il y a tellement de mod�les de terminaux qu'une telle t�che serait relativement p�nible et moi, David Lawyer (en 1998), n'ai aucunement l'intention de tenter cette aventure. Si les fabricants de terminaux mettaient au moins leurs manuels � disposition sur Internet, alors tout ceci ne serait pas n�cessaire.
Les terminaux CIT ont �t� fabriqu�s au Japon dans les ann�es 1980 pour CIE Terminals. On a cess� de les importer � la fin des ann�es 1980. La soci�t�, CIE, fabrique encore des imprimantes CItoh (en 1997) mais n'a pas de pi�ces d�tach�es pour ses terminaux arr�t�s. Ernie au (714) 453-9555 � Irvine, Californie, vendait (en 1997) certaines pi�ces pour les mod�les 224, 326, etc. mais n'a rien pour les 80 et 101. (Le document que vous lisez � l'heure actuelle a �t� principalement �crit sur le 101e.)
Pour sauver les param�tres de configuration pressez ^S en mode Set-Up. cit80 : contraste : molette � l'arri�re du terminal, cit101e : luminosit� : utilisez les touches fl�ch�es haut/bas en mode Set-Up.
Ne confondez pas les terminaux IBM avec les moniteurs IBM PC. Beaucoup de terminaux IBM n'utilisent pas l'ASCII mais � la place un code EBCDIC sur 8 bits. On dit que dans EBCDIC l'ordre de transmission des bits est invers�e par rapport � la normale avec le bit de haut rang en premier. Les normes de communication avec les minis IBM sont un type de communication synchrone en mode par blocs (envoie de grands paquets de caract�res). Deux normes sont "BISYNC" et "SNA" (qui comprend des normes de r�seau). Beaucoup de leurs terminaux sont reli�s avec du c�ble coaxial (RG62A/U) et les personnes na�ves peuvent penser que le connecteur "BNC" sur le terminal est pour l'Ethernet (mais ce n'est pas le cas).
Alors que ce syst�me IBM est en r�alit� plus efficace que ce qui est normalement utilis� sous Linux, les terminaux poss�dant ces caract�ristiques IBM ne fonctionneront pas sous Linux. Cependant, certains terminaux IBM sont des terminaux ASCII asynchrones et devraient fonctionner sous Linux sur des PC. Les mod�les 31xx peuvent fonctionner � l'exception que 317x et 319x ne sont pas des terminaux ASCII. Avant d'acqu�rir un terminal IBM, assurez-vous qu'il y a une entr�e termcap (ou terminfo) pour celui-ci. S'il n'y en a pas, il ne fonctionnera probablement pas sous Linux. M�me s'il y a une entr�e terminfo, il peut ne pas fonctionner. Par exemple, il y a une entr�e termcap pour les 327x mais le 3270 est un terminal synchrone EBCDIC.
Les mod�les 3270 comprennent le 3278 (fin des ann�es 1970), le 3279 avec la couleur et les graphiques, et le contr�leur de terminal 3274 (� peu pr�s comme le 3174). On peut les utiliser � la fois pour BISYNC et SNA. Le 3290 a un �cran s�par� (s�par� en quartiers).
Les terminaux synchrones IBM ne sont pas directement reli�s au mini IBM mais sont reli�s � un "contr�leur de terminaux" (qu'on appelle parfois "contr�leur de cluster" ou "contr�leur de communications"). Certains de ces contr�leurs peuvent convertir un signal synchrone en asynchrone et donc dans ce cas on pourrait relier indirectement un terminal synchrone � un ordinateur h�te de type Unix par son port s�rie. Mais il reste un probl�me majeur qui est la transmission par blocs. Voyez la section mode par blocs.
On dit que le port Aux est DCE et utilise un c�ble droit.
Ce sont des antiquit�s et ils repr�sentent les terminaux les plus anciens. Ils ressemblent � des machines � �crire t�l�command�es mais sont grands et font du bruit. Fabriqu�s par Teletype Corp., les premiers mod�les ont �t� faits dans les ann�es 1920 et devancent l'ordinateur de plus de 30 ans. Les premiers mod�les utilisaient des relais �lectro-m�caniques et des distributeurs rotatifs au lieu d'�lectronique. Leur code Baudot n'avait que 5 bits par caract�re compar� � l'ASCII sur 7 bits. Voyez le livre "Small Computer Systems Handbook" par Sol Libes, Hayden Books, 1978 : pp. 138-141 ("Teletypes").
Digital Equipment Corporation a fabriqu� les mod�les VT renomm�s avec le VT100 couramment �mul�. En 1995 ils ont vendu leur partie terminaux � SunRiver qui s'appelle maintenant Boundless Technologies. On trouvera plus d'informations sur le site Web de Shuford. Les informations sur les produits actuels sont disponibles sur le site Web de Boundless. Voyez informations sur Internet.
VT220 : certains poss�dent un connecteur BNC pour la sortie vid�o (pas pour l'entr�e). Parfois les gens croient � tort que c'est pour une liaison Ethernet.
VT520 : il supporte le contr�le de flux DTR/DSR complet.
Wyse poss�de certaines FAQ pour les terminaux dont les num�ros sont en-dessous de 100 (comme le WY60). Voyez http://www.wyse.com/service/faq/wysetterl.htm. Pour les sp�cifications de terminaux plus r�cents voyez http://www.wyse.com/terminal/.
Voici les menus de configuration du Wyse99GT (fin des ann�es 1980). Notez que TERM veut dire "terminaison" (caract�re) et non "terminal".
Configuration du terminal WYSE 99-GT telle qu'utilis�e � l'universit� d'Irvine, Californie par David Lawyer, avril 1990 F1 DISP: COLUMNS=80 LINES=24 CELL SIZE=10 X 13 STATUS LINE=STANDARD BACKGROUND=DARK SCROLL SPEED=JUMP SCREEN SAVER=OFF CURSOR=BLINK BLOCK DISPLAY CURSOR=ON ATTRIBUTE=CHAR END OF LINE WRAP=ON AUTO SCROLL=ON ---------------------------------------------------------------------------- F2 GENERAL: PERSONALITY=VT 100 ENHANCE=ON FONT LOAD=OFF COMM MODE=FULL DUPLEX RCVD CR=CR SEND ACK=ON RESTORE TABS=ON ANSWERBACK MODE=OFF ANSWERBACK CONCEAL=OFF WIDTH CHANGE CLEAR=OFF MONITOR=OFF TEST=OFF ---------------------------------------------------------------------------- F3 KEYBRD: KEYCLICK=OFF KEYLOCK=CAPS KEY REPEAT=ON RETURN=CR ENTER=CR FUNCT KEY=HOLD XMT LIMIT=NONE FKEY XMT LIMIT=NONE BREAK=170MS LANGUAGE=US MARGIN BELL=OFF PRINTER RCV=OFF ---------------------------------------------------------------------------- F4 COMM: DATA/PRINTER=AUX/MODEM MDM RCV BAUD RATE=9600 MDM XMT BAUD RATE=9600 MDM DATA/STOP BITS=8/1 MDM RCV HNDSHAKE=NONE MDM XMT HNDSHAKE=NONE MDM PARITY=NONE AUX BAUD RATE=9600 AUX DATA/STOP BITS=8/1 AUX RCV HNDSHAKE=NONE AUX XMT HNDSHAKE=NONE AUX PARITY=NONE (Il y a un port principal (Modem=MDM) et un port auxiliaire (AUX) ---------------------------------------------------------------------------- F5 MISC 1: WARNING BELL=ON FKEY LOCK=OFF FEATURE LOCK=ON KEYPAD=NUMERIC DEL=DEL/CAN XFER TERM=EOS CURSOR KEYS=NORMAL MARGIN CTRL=0 DEL FOR LOW Y=ON GIN TERM=CR CHAR MODE=MULTINATIONAL ---------------------------------------------------------------------------- F6 MISC 2: LOCAL=OFF SEND=ALL PRINT=NATIONAL PORT=EIA DATA SEND AREA=SCREEN PRINT AREA=SCREEN DISCONNECT=60 MSEC SEND TERM=NONE PRINT TERM=NONE PRINT MODE=NORMAL VT100 ID=VT100 POUND=US ---------------------------------------------------------------------------- F7 TABS: Vous devriez voir plusieurs caract�res "T" s�par�s par 8 points. Sinon, appuyez sur backspace. F8 F/KEYS: Vous ne verrez normalement pas de d�finition pour les touches de fonction ici (sauf si quelqu'un les a d�finies et sauv�es). Ceci veut dire qu'elles g�n�reront normalement leurs valeurs par d�faut (pas affich�es ici). <ctrl><F5> montre la "d�finition par l'utilisateur" de la touche F5, etc. F9 A/BACK: Normally not defined: ANSWERBACK = F10 EXIT: La s�lection de "DEFAULT ALL" rendra les param�tres par d�faut d�finis en usine.
Astuces sur l'utilisation du Guide de l'Utilisateur du WY-99GT :
Notez qu'on peut trouver une grande partie de ce qui manque dans ce guide dans le Guide du Programmeur WY-99GT. L'�mulation (personnalit�) VT100 s'appelle ANSI et utilise les codes de touches ANSI comme indiqu� � la page A-10 et plus, bien que le clavier soit en ASCII. Un sous-titre sur la page A-13 "clavier ASCII" s'applique aussi au VT100 parce qu'il a un sur-titre "Touches ANSI..." quelques pages avant. Mais tous les titres sur le clavier ASCII ne concernent pas le VT100 puisqu'ils tombent dans un sur-titre de personnalit� non ANSI qu'on peut trouver quelques pages auparavant. L'annexe H est le "guide de commandes ANSI" sauf pour la personnalit� VT52 (ANSI) qu'on trouve dans l'annexe G.
Quand on sort du menu de configuration avec F12, l'appui sur espace change de "non" � "oui" pour sauver la configuration. La phrase � gauche de ce non/oui parle d'"alignement vertical" et n'a rien � faire avec ce non/oui pour sauver la configuration (interface de menu confuse).
Fin du HOWTO Text-Terminal