Système X Window
Le système X Window est un système de type fenêtre graphique, multi-utilisateur et portable, développé à l'origine par le MIT, l'Institut de technologie du Massachusetts. « Portable », parce qu'il peut s'exécuter sur de nombreux types d'ordinateurs hôte (y compris OpenVMS et une variété d'hôtes Linux) et « multi-utilisateur », parce que de nombreux utilisateurs peuvent accéder en même temps aux applications X en se connectant à l'hôte sur un réseau. En tant que système de type fenêtre, le système X Window permet aux utilisateurs d'exécuter plusieurs applications à la fois, chacune dans une fenêtre distincte (tout comme dans Microsoft Windows).
Les applications (clients) X fournissent l'interface utilisateur graphique à de nombreux environnements basés sur les hôtes tels que les environnements GDE (GNOME Desktop Environment), KDE (K Desktop Environment) et CDE (Common Desktop Environment), parmi les plus connus. Les applications X sont également couramment développées à des fins techniques, scientifiques et de fabrication.
Le système X Window est basé sur un modèle client-serveur :
-
Le « client » X est un programme applicatif qui s'exécute sur un ordinateur hôte.
-
Le « serveur » d'affichage X est le logiciel intermédiaire entre les programmes applicatifs client et le matériel d'affichage local et les périphériques d'entrée (souris et clavier). Le serveur effectue le suivi de toutes les entrées provenant de ces périphériques et les transmet aux applications client pertinentes.
Le serveur répond également aux demandes de sortie du client et met à jour l'affichage pour refléter la sortie. Dans Reflection X, l'affichage et le serveur X ont été découplés.
Cette division effectuée dans l'architecture du système X Window permet aux clients et au serveur d'affichage de résider sur des types d'ordinateurs différents. Les applications client se trouvent sur des hôtes Linux tandis que le serveur est exécuté sur l'ordinateur local. Pour Reflection X, il peut s'agir d'un ordinateur Windows ou Linux.
Le serveur d'affichage X s'exécutant sur un ordinateur local, la terminologie client-serveur paraît souvent inversée pour les utilisateurs néophytes du système X Window. En tant que serveur d'affichage, l'ordinateur local fournit les services de l'affichage local, du clavier et de la souris aux applications (clients) s'exécutant sur d'autres ordinateurs.
Demandes, réponses, événements et erreurs
Modes de communication du serveur X et des applications client X :
-
Demandes adressées au serveur par des clients.
-
Réponses du serveur aux demandes formulées par des clients.
-
Événements à transmettre à tout client inscrit pour recevoir des événements.
Un événement intervient lorsqu'une entrée utilisateur est détectée (déplacement de la souris ou activation d'une touche) ou que d'autres informations sont envoyées du serveur d'affichage à l'application client. Lorsqu'une application client reçoit un événement significatif, elle peut envoyer plus de demandes au serveur afin qu'il agisse au niveau de l'affichage.
-
Erreurs à transmettre aux clients lorsqu'une demande échoue ou est non valide.