X
La librairie X, plus connue sous Xlib, est à la base des interfaces. Cest le niveau le plus bas. Xlib rend transparent le réseau permettant laffichage sur des machines distantes et différentes.
Dautres toolkits de plus haut niveau ont été écrits. Xt est la seule à faire désormais partie du standart X. Tous ces toolkits sappuient sur Xlib.
Xlib est une interface de programmation en langage C pour la version 11 de X Window System. Cette version est appelée aussi X11.
X Window System repose sur quelques notions; les voici:
* Un display comprend un clavier, une souris et un ou plusieurs écrans. Laccès aux écrans peut se faire une fois la souris en dehors dun écran.
* Mode Client/Serveur. Sur la machine où laffichage se produit, un client reçoit des messages qui donnent la connaissance de laffichage et envoie les évènements clavier et souris. Les processus peuvent être sue des machines différentes.
* La gestion des fenêtres est réalisée par un programme à part: le window manager. Le window manager est un programme comme un autre, écrit en Xlib, à part quil a le pouvoir de contrôler lemplacement des fenêtres et leur superposition. Il agit avec un ensemble de règles: la window layout policy. Le client donne donc juste des indications de position...et lapplication doit pouvoir réagir si ses souhaits ne sont
pas respectés (taille,...). Cependant, X a été conçu de façon à être le plus général possible. Aussi, les développeurs X ne se sont pas attachés à créer des window manager puissants. Ce sont alors des constructeurs, qui ont pris le relais avec OPEN LOOK (olwn) et OSF Motif (mwm).
* X permet la programmation par évènements.
* X peut être étendu. Le code contient des mécanismes permettant dinclure des extensions. Il y a les extensions standart comme les fenêtres 3D (PEX) avec 2 API: PHIGS et PEXlib.
ARCHITECTURE
Un display server est un programme qui tourne sur chaque système qui supporte un affichage graphique, un clavier, une souris. Les applications communiquent avec le serveur par lintermédiaire des fonctions Xlib. Ces fonctions vont permettre de se connecter à un display server, de créer des fenêtres, répondre aux évènements, ...
X bufférise ses échanges réseaux. Lorsque lon accède à une fonction Xlib, elle naccède pas au réseau: si elle en a besoin, elle place les informations à tranmettre dans une file dattente. Cela permet daméliorer le flux réseau avec des paquets plus longs et plus remplis.
Les fenêtres, fontes fe caractères, ... sont des ressources et sont marquées par un numéro unique (ID). Les fonctions Xlib transmettent leurs informations au réseau en précisant lID de la ressource concernée. Si le serveur ne connaît pas certains champs de la ressource, il va les réclamer au client...
Pour permettre à des clients de communiquer entre eux, des properties ou des atomes ont été construits. Les propriétés ont une chaîne de caractères (WM_COLORMAP_WINDOWS) et un identifieur numérique: latome. En cas de transmission réseau, seul latome sera envoyé.
Certains atomes sont prédéfinis. Leur nom symbolique commence par XA.
Ces communications sont principalement utilisées entre lapplication et le window manager. Lapplication place les propriétés standard sur la fenêtre racine: taille,... Puis le window manager y écrit les propriétés quil a choisies.
Pour nous contacter : siteclic.aro.microclic.com en remplaçant '.aro.' par @
3 requêtes