X Window System

Interface utilisateur graphique Xfce
De nombreux utilisateurs utilisent X avec un environnement de bureau, qui, outre le gestionnaire de fenêtres, comprend diverses applications en utilisant une interface utilisateur cohérente. environnements de bureau les plus populaires sont GNOME, KDE Software Compilation et Xfce. UNIX 98 environnement standard est le Common Desktop Environment (CDE). L'initiative freedesktop.org aborde l'interopérabilité entre les ordinateurs de bureau et les composants nécessaires à un ordinateur de bureau compétitif X.
La mise en œuvre X.Org est la mise en œuvre canonique de X. En raison de licence libérale. un certain nombre de variations, à la fois libre et open source et propriétaires. est apparu. fournisseurs Unix commerciaux ont eu tendance à prendre la mise en œuvre de référence et l'adapter à leur matériel, la personnalisation habituellement et l'ajout d'extensions propriétaires.

Cygwin / X en cours d'exécution sur déracinée Microsoft Windows XP via la commande startx - -rootless. L'écran affiche les applications X partageant l'écran avec des applications Microsoft Windows natives (xeyes xclock et xterm.) (Date - Heure et calculatrice).
Il existe également des implémentations Java de serveurs X. WeirdX fonctionne sur toute plate-forme de soutien swing 1.1, et se déroulera sous forme d'applet dans les plupart des navigateurs. Android X Server est une implémentation Java open source qui fonctionne sur les appareils Android.
Lorsqu'un système d'exploitation avec un système hôtes de fenêtrage X natif en plus, le système X peut soit utiliser son propre bureau normal dans une fenêtre séparée hôte ou il peut fonctionner sans racines. ce qui signifie le bureau X est caché et l'environnement de fenêtrage hôte gère la géométrie et l'apparence des fenêtres X hébergées au sein de l'écran d'accueil.
terminaux X Modifier

Un terminal X est un client léger qui ne fonctionne que d'un serveur X. Cette architecture est devenu populaire pour la construction de parcs de terminaux bon marché pour de nombreux utilisateurs d'utiliser simultanément le même grand serveur informatique pour exécuter des programmes d'application en tant que clients du terminal X de chaque utilisateur. Cette utilisation est très aligné avec l'intention originale du projet MIT.
terminaux X explorer le réseau (le domaine de diffusion locale) à l'aide de l'affichage X Gestionnaire Control Protocol pour générer une liste d'hôtes disponibles qui sont autorisés en tant que clients. L'un des hôtes du client doit exécuter un gestionnaire d'affichage X.
Une limitation des terminaux X et les clients les plus minces est qu'ils ne sont pas capables d'une entrée ou une sortie autre que le clavier, la souris et l'affichage. Toutes les données pertinentes sont supposées exister uniquement sur le serveur distant et l'utilisateur du terminal X n'a pas les méthodes disponibles pour enregistrer ou charger des données à partir d'un périphérique local.
Dédié (matériel) terminaux X sont tombés hors d'usage; un PC ou client léger moderne avec un serveur X fournit généralement les mêmes fonctionnalités en même temps, ou moins, le coût.
Limitations et Modifier la critique
Questions Interface utilisateur Modifier
L'absence de lignes directrices de conception dans X a donné lieu à plusieurs interfaces très différentes, et dans les applications qui ne sont pas toujours bien ensemble. Les Conventions de Inter-Client Communication Manuel (ICCCM), une spécification d'interopérabilité client, a la réputation d'être difficile à mettre en œuvre correctement. D'autres efforts de normalisation tels que Motif et CDE n'a pas atténué les problèmes. Cela a des utilisateurs et des programmeurs frustrés. [5] programmeurs graphiques maintenant portent généralement sur la cohérence de l'application look and feel et de la communication par le codage à un environnement de bureau spécifique ou à une boîte à outils widget spécifique, ce qui évite aussi d'avoir à traiter directement avec le ICCCM.
accessibilité informatique questions connexes Modifier
Le projet Orca ajoute le support d'accessibilité au système X Window, y compris la mise en œuvre d'une API (AT-SPI [6]). Ceci est couplé avec ATK de Gnome pour permettre des fonctions d'accessibilité à mettre en œuvre dans les programmes X en utilisant les API Gnome / GTK. [7] KDE fournit un ensemble différent de logiciels d'accessibilité, y compris un convertisseur texte-parole et un agrandisseur d'écran. [8] Les autres bureaux principaux (LXDE, XFCE et Lumières) tentent d'être compatible avec ATK.
Modifier le réseau

Exemple de l'effet tunnel d'une application X11 via SSH
Un client X ne peut pas être détaché généralement d'un serveur à un autre et recollé à moins que son code prévoie explicitement (emacs est l'un des rares programmes communs avec cette capacité). A ce titre, le déplacement d'une session entière d'un serveur X à l'autre est généralement pas possible. Cependant, les approches comme Virtual Network Computing (VNC), NX et XPRA permettent une session virtuelle accessible depuis différents serveurs X (de manière similaire à l'écran GNU par rapport aux terminaux), et d'autres applications et boîtes à outils fournissent des installations connexes. [9] comme solutions de contournement x11vnc (VNC: 0 spectateurs), le mode ombre de XPRA et le mode ombre nxagent NX existent aussi pour rendre l'écran actuel serveur X disponible. Cette capacité permet à l'interface utilisateur (souris, clavier, écran) d'une application en cours d'exécution à passer d'un endroit à un autre sans arrêter et redémarrer l'application.
Le trafic réseau entre un serveur X et les clients distants X ne sont pas cryptées par défaut. Un attaquant avec un renifleur de paquets peut intercepter, permettant de voir quoi que ce soit affiché ou envoyé à partir de l'écran de l'utilisateur. La façon la plus courante de chiffrer le trafic X est d'établir un tunnel SSH (Secure Shell) pour la communication.
Comme tous les clients légers. X lors de l'utilisation sur un réseau, limitations de bande passante peuvent empêcher l'utilisation des applications à forte intensité bitmap qui nécessitent une mise à jour rapide de grandes parties de l'écran avec une faible latence, telles que l'édition animation 3D ou photo. Même un flux vidéo non compressé relativement faible 640x480x24 bits 30 images par seconde peut facilement dépasser la bande passante de 100 Mbit / s réseau pour un seul client. En revanche, les versions modernes de X ont généralement des extensions telles que MESA permettant l'affichage local d'un des graphiques de programme local pour être optimisés pour contourner le modèle de réseau et de contrôler directement la carte vidéo, pour l'utilisation de la vidéo plein écran, rendu des applications 3D, et d'autres de telles applications.
séparation client-serveur Modifier
implémentations modernes X utilisent les sockets de domaine Unix pour les connexions efficaces sur le même hôte. En outre la mémoire partagée (via l'extension MIT-SHM) peut être utilisé pour une communication plus rapide client-serveur. [11] Cependant, le programmeur doit encore activer explicitement et utiliser l'extension de mémoire partagée. Il est également nécessaire de prévoir des chemins de secours afin de rester compatible avec les anciennes implantations, et afin de communiquer avec les serveurs X non locaux.
Des moyens supplémentaires pour parvenir à une forme fonctionnelle de la fonction « transparence réseau » de X, via transmissibilité réseau de services graphiques, comprennent:
- Virtual Network Computing (VNC), un système très bas niveau qui envoie des bitmaps compressés à travers le réseau; la mise en œuvre Unix comprend un serveur X
- Remote Desktop Protocol (RDP), qui est similaire à VNC but, mais son origine sur Microsoft Windows avant d'être porté sur les systèmes Unix; cf NX. GoToMyPC. etc.
- Citrix XenApp. une pile de protocole et application comme X pour Microsoft Windows
- Tarentelle. qui fournit une base Java à distance client pour IUG utilisation dans les navigateurs web
Plusieurs systèmes d'affichage bitmap précédés X. De Xerox est venu le Alto (1973) et l'Etoile (1981). De Apollo Computer est venu Display Manager (1981). D'Apple est venu le Lisa (1983) et Macintosh (1984). Le monde Unix avait le projet Andrew (1982) et Rob borne Blit de Pike (1982).
X tire son nom comme successeur à un système de fenêtre avant 1983 appelée W (la lettre précédente X dans l'alphabet anglais). W couru sous le système d'exploitation V. W a utilisé un fenêtres de terminal supportant le protocole de réseau et graphiques, le serveur à jour des listes d'affichage.
Origine et développement précoce Modifier
Le MIT X Consortium et le Consortium X, Inc. Modifier

The Open Group Edition
X.Org et XFree86 Modifier
La Fondation X.Org Modifier
Les noms propres du système sont répertoriés dans la page de manuel comme X; X Window System; X Version 11; X Window System, version 11; ou X11. [48]
Termes clés Modifier
Le système X Window a nuancé l'utilisation d'un certain nombre de termes par rapport à l'usage commun, en particulier « affichage » et « écran », un sous-ensemble est donnée ici pour plus de commodité:
Le terme « affichage » ne doit pas être confondu avec le jargon plus spécialisé « d'affichage Zaphod ». Ce dernier est une configuration rare permettant à plusieurs utilisateurs d'un seul ordinateur à chacun un ensemble indépendant de l'affichage, la souris et le clavier, comme si elles utilisaient des ordinateurs distincts, mais à un coût par siège inférieur.