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