Serveur X

Serveur X

X Window System

Page d'aide sur l'homonymie Ne pas confondre avec le système d'exploitation Windows de Microsoft qui prend un "s" à la fin
Page d'aide sur l'homonymie Pour les articles homonymes, voir X11.

X Window System ou X11 ou simplement X est une interface utilisateur graphique de type "fenêtré" qui gère l'interaction homme-machine par l'écran, la souris et le clavier de certains ordinateurs en réseau. Il est souvent appelé X Window à tort car son nom est X et que c'est un système de fenêtrage. C'est un mauvais raccourci utilisé en français, mais pas en anglais car il n'aurait aucun sens. C'est le système standard ouvert d'interaction graphique avec l'utilisateur sur les UNIX (Linux, BSD, etc.). Le serveur X est optionnel sur Mac OS X (qui utilise nativement Quartz). Il est possible d'installer un serveur X sur la plupart des systèmes d'exploitation, dont Windows[1]. On dit communément d'une application qu'elle tourne sous X lorsqu'elle est conçue pour l'environnement X.

Sommaire

Fonctionnement

Schéma client-serveur de X Window

X fonctionne suivant le modèle client/serveur :

  • le logiciel serveur X tourne sur une machine qui est dotée d'un écran, d'un clavier et d'une souris ; il reçoit et sert des requêtes d'affichage, d'entrées de texte et de déplacement de souris sur un port logiciel,
  • un logiciel client X (logiciel graphique) se connecte au serveur X et lui envoie ses requêtes d'affichages en utilisant le protocole X au travers de la bibliothèque X (Xlib).

X fonctionne en IPv4 depuis des années, mais il peut également fonctionner en IPv6.

Ce modèle de communication permet notamment l'affichage de fenêtres et autres éléments d'interfaces graphiques, en local (logiciel client et serveur sur la même machine) ou déporté sur un autre ordinateur à travers le réseau (un logiciel graphique tourne sur une machine distante et est affiché sur une station de bureau ou portable).

L'affichage graphique se fait par "bitmap" (image matricielle), par opposition à la réalisation par image vectorielle.

Parmi les clients X, on en distingue généralement un en particulier : le gestionnaire de fenêtres dont le rôle est de gérer l'affichage, la sélection, le déplacement, le redimensionnement et les décorations des fenêtres (une fenêtre particulière étant la root-window c'est-à-dire fenêtre-racine).

Programmation X

La programmation pour X peut se faire à différents niveaux. Le plus bas est celui du protocole X, ou comment le client et le serveur échangent des données. On ne programme pour ainsi dire jamais directement au niveau du protocole, mais il peut servir de le connaître, de façon par exemple à décoder les informations qui circulent.

Bibliothèques pour la programmation X

Le niveau au-dessus est celui de la bibliothèque X ou Xlib. La Xlib propose une traduction assez directe des requêtes du protocole X en appels de fonctions. Elle permet notamment de créer et de manipuler des fenêtres, de dessiner à l'intérieur par l'intermédiaire d'un « contexte graphique » et de recevoir des événements (clavier, souris, exposition des fenêtres, messages inter-clients, etc.) Pour la Xlib, une fenêtre est un rectangle dans lequel on peut dessiner, et qu'on peut soulever ou baisser par rapport aux autres (on peut aussi imbriquer des fenêtres) ; la décoration des fenêtres de plus haut niveau est apportée par le gestionnaire de fenêtres. La programmation directe en Xlib n'est guère adaptée que pour des environnements à l'environnement graphique très limité ou pour le développement de toolkit.

Le niveau suivant est celui du X Toolkit, Xt en abrégé, un système orienté objets (mais entièrement en C) qui permet de manipuler des widgets, qui sont des fenêtres munies de ressources et de méthodes, leur permettant de réagir « toutes seules » à certains événements. Ce niveau est composé de deux parties : les X toolkit intrinsics et un jeu de widgets. Les intrinsics sont le cadre dans lequel on peut communiquer avec les widgets et proposent quelques widgets tout à fait rudimentaires (dont le widget Core, une fenêtre qui ne réagit à rien). Il y a plusieurs jeux de widgets disponibles pour le X toolkit. Le jeu Athena (Xaw en abrégé), développé au MIT, est petit et peu complet, mais il a l'avantage d'être léger, standard et gratuit. Deux autres exemples importants sont le jeu Motif de l'OSF, très commun pour les applications commerciales jusque vers 2000, et OpenLook, qui imite l'apparence de SunView, dont il est le remplaçant.

Ces différentes bibliothèques sont de moins en moins utilisées, au profit d'autres surcouches de la Xlib, qui remplissent les mêmes fonctions que Xt mais qui sont disjointes de lui. Les deux principales sont GTK+ et Qt.

Informations supplémentaires

Le logiciel client X sans doute le plus connu et celui qui sert à également tester un bon paramétrage est xclock (xeyes et xlogo sont également très utilisés à des fins de démonstration).

C'est le MIT qui a publié la première version du X Window System en juin 1984.

À la fin des années 1980, Sun a proposé un protocole et un serveur programmable de plus haut niveau NeWS -programmable dans un langage étendant PostScript pour le graphique distant, qui n'a pas eu le succès escompté.

On trouvait sur X Window la première version du logiciel Neko.

Voir aussi

Articles connexes

Liens externes

Notes et références

  1. (en) Colin Harrison, « Xming X Server », 2008. Consulté le 31 juillet 2008
  • Portail des logiciels libres Portail des logiciels libres

Ce document provient de « X Window System ».

Wikimedia Foundation. 2010.

Contenu soumis à la licence CC-BY-SA. Source : Article Serveur X de Wikipédia en français (auteurs)

Игры ⚽ Поможем написать курсовую

Regardez d'autres dictionnaires:

  • serveur — serveur, euse [ sɛrvɶr, øz ] n. • fin XIXe; « serviteur » XIIIe; de servir 1 ♦ Personne chargée de servir les clients (dans un restaurant, un café). ⇒ barmaid, garçon. Demander l addition à la serveuse. ♢ Domestique qu on prend en extra pour… …   Encyclopédie Universelle

  • Serveur — Cette page d’homonymie répertorie les différents sujets et articles partageant un même nom. Sur les autres projets Wikimedia : « Serveur », sur le Wiktionnaire (dictionnaire universel) Au sens propre, un serveur est une entité qui… …   Wikipédia en Français

  • serveur — ● n. m. ►ORDI Ordinateur détenant des ressources particulière et qu il met à la disposition d autres ordinateurs par l intermédiaire d un réseau. On parle d architecture client serveur . Voir aussi DNS. Différents types de serveurs: serveur d… …   Dictionnaire d'informatique francophone

  • serveur X — ● loc. m. ►UNIX►X►UNIX Xserver en anglais. Programme grâce auquel une machine dispose de X11 et peut donc exploiter tout client X. Attention: le programme serveur X fonctionne sur le poste de l utilisateur, donc la machine dite cliente . Aucun… …   Dictionnaire d'informatique francophone

  • serveur — EUSE, n. ; serviteur ; servante : sarviteu, za, e (Albanais, Combe Si.), sarveu / ò, za, e (001), sèrveur, eûza, e (Notre Dame Be.) …   Dictionnaire Français-Savoyard

  • Serveur informatique — Pour les articles homonymes, voir Serveur. Des serveurs empilés Dans un réseau informatique, un serveur est un ordinateur et un …   Wikipédia en Français

  • Serveur Prive Lineage2 — Serveur Privé Lineage2 A ce jour il existe trois types de données afin de lancer un serveur Lineage II: L2J (Java), L2officiel et L2c (C# ou C++). Nous nous pencherons donc sur chacune d entre elles. Il faut rappeler qu un serveur privé est… …   Wikipédia en Français

  • Serveur Privé Lineage2 — A ce jour il existe trois types de données afin de lancer un serveur Lineage II: L2J (Java), L2officiel et L2c (C# ou C++). Nous nous pencherons donc sur chacune d entre elles. Il faut rappeler qu un serveur privé est autorisé ou non selon la… …   Wikipédia en Français

  • Serveur dedie virtuel — Serveur dédié virtuel Un serveur dédié virtuel (également appelé serveur virtuel), en anglais virtual private server ou virtual dedicated server est une méthode de partitionnement d un Serveur en plusieurs serveurs virtuels indépendants qui ont… …   Wikipédia en Français

  • Serveur http — Pile de protocoles 7 • Application 6 • Présentation 5 • Session 4 • Transport …   Wikipédia en Français

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”