X-Window-System

Xfce grafische Benutzeroberfläche
Viele Benutzer verwenden X mit einer Desktop-Umgebung, die, abgesehen von dem Window-Manager, verschiedene Anwendungen mit einer einheitlichen Benutzerschnittstelle umfasst. Beliebte Desktop-Umgebungen umfassen GNOME, KDE Software Compilation und Xfce. Die UNIX-98 Standard-Umgebung ist die Common Desktop Environment (CDE). Die freedesktop.org Initiative richtet ich die Interoperabilität zwischen den Desktops und den Komponenten für einen wettbewerbsfähigen X-Desktop benötigt.
Die X.Org-Implementierung ist die kanonische Implementierung von X. zu liberal Lizenzierung Durch. eine Reihe von Variationen, die beide kostenlos und Open Source und proprietär. sind aufgetaucht. Kommerzielle Unix-Anbieter haben neigten dazu, die Referenz-Implementierung zu nehmen und sie für ihre Hardware anpassen, in der Regel des Customizing und proprietäre Erweiterungen hinzufügen.

Cygwin / X läuft wurzellos auf Microsoft Windows XP über den Befehl startx - -rootless. Der Bildschirm zeigt X-Anwendungen auf den Bildschirm mit nativen Microsoft Windows-Anwendungen zu teilen (xeyes xclock und xterm.) (Datum - Uhrzeit und Rechner).
Darüber hinaus gibt es Java-Implementierungen von X-Servern. WeirdX läuft auf jeder Plattform unterstützt Schwingen 1.1 und wird als Applet in den meisten Browsern laufen. Der Android-X-Server ist eine Open-Source-Java-Implementierung, die auf Android-Geräten läuft.
Wenn ein Betriebssystem mit einem nativen Windowing-System Hosts X zusätzlich kann das X-System entweder seine eigene normale Desktop in einem separaten Host-Fenstern verwenden, oder es kann wurzellos laufen. den X-Desktop Sinn verborgen ist und die Host-Windowing-Umgebung verwaltet die Geometrie und das Aussehen der gehosteten X Fenster innerhalb des Host-Bildschirm.
X-Terminals bearbeiten

Ein X-Terminal ist ein dünner Client, der nur einen X-Server läuft. Diese Architektur wurde populär für den Aufbau kostengünstigen Terminal Parks für viele Benutzer desselben großen Computer-Server gleichzeitig verwenden Anwendungsprogramme als Kunden von jedem Benutzer X-Terminal auszuführen. Diese Verwendung ist sehr viel mit der ursprünglichen Absicht des MIT-Projekt ausgerichtet ist.
X-Terminals erkundet das Netzwerk (die lokale Broadcast-Domäne) mit dem X Display Manager Control Protocol eine Liste der verfügbaren Hosts zu erzeugen, die als Clients erlaubt sind. Einer der Client-Hosts sollte einen X-Display-Manager läuft.
Eine Begrenzung des X-Terminals und die meisten Thin Clients ist, dass sie nicht in der Lage jeden Eingang oder Ausgang mit Ausnahme der Tastatur, Maus und Anzeige sind. Alle relevanten Daten werden angenommen, ausschließlich auf dem Remote-Server existieren, und der X-Terminal-Benutzer hat noch keine Methoden zur Verfügung zu speichern oder Belastungsdaten von einer lokalen peripheren Vorrichtung.
Gewidmet (Hardware) X Terminals außer Gebrauch geraten; ein PC oder moderner Thin Client mit einem X-Server stellt in der Regel die gleiche Funktionalität auf den gleichen oder niedriger Kosten.
Einschränkungen und Kritik bearbeiten
Benutzeroberfläche gibt bearbeiten
Der Mangel an Gestaltungsrichtlinien in X hat in mehreren sehr unterschiedlichen Schnittstellen geführt, und in Anwendungen, die gut zusammen nicht immer gearbeitet haben. Das Inter-Client Communication Conventions Manual (ICCCM), eine Spezifikation für die Client-Interoperabilität, hat einen guten Ruf für schwierig zu sein korrekt zu implementieren. Weitere Standards Anstrengungen wie Motif und CDE keine Probleme lindern. Dies hat frustrierten Anwender und Programmierer. [5] Grafik-Programmierer jetzt beziehen sich grundsätzlich auf die Konsistenz der Anwendung und es herrscht Kommunikation durch Codierung zu einem bestimmten Desktop-Umgebung oder ein bestimmtes Widget Toolkit, das mit dem ICCCM direkt beschäftigen vermeidet auch mit.
Computer Zugänglichkeit Fragen bearbeiten
Das Orca Projekt fügt Zugänglichkeit Unterstützung für das X-Window-System, einschließlich der Implementierung einer API (AT-SPI [6]). Dies wird mit Gnome AGF gekoppelt zu ermöglichen Funktionen Zugänglichkeit in X-Programme implementiert werden unter Verwendung der Gnome / GTK-APIs. [7] KDE stellt einen anderen Satz von Zugänglichkeit Software, einschließlich eines Text-zu-Sprache-Wandler und eine Bildschirmlupe. [8] Die anderen großen Desktops (LXDE, XFCE und Aufklärung) versuchen, mit ATK kompatibel zu sein.
Netzwerk bearbeiten

Beispiel des Tunnelbaus eine X11-Anwendung über SSH
Ein X-Client von einem Server und wieder angebracht zu einem anderen werden im allgemeinen nicht abgelöst, es sei denn ihr Code speziell dafür bereitstellt (Emacs ist eine der wenigen gemeinsamen Programme mit dieser Fähigkeit). Als solches ist in der Regel nicht möglich, eine gesamte Sitzung von einem X-Server zum anderen. Allerdings Ansätze wie Virtual Network Computing (VNC), NX und XPRAs ermöglichen eine virtuelle Sitzung von verschiedenem X-Server (in einer ähnlichen Weise wie GNU-Bildschirm in Bezug auf Terminals) und andere Anwendungen und Toolkits bieten zugehörige Einrichtungen erreicht werden. [9] Umgehungen wie x11vnc (VNC: 0 Zuschauer), existieren XPRAs Schatten-Modus und NX nxagent Schatten-Modus auch die aktuelle X-Server-Bildschirm zur Verfügung zu stellen. Diese Fähigkeit ermöglicht die Benutzeroberfläche (Maus, Tastatur, Monitor) von einer laufenden Anwendung von einem Ort zum anderen, ohne zu Anhalten und Neustarten der Anwendung geschaltet werden.
Der Netzwerkverkehr zwischen einem X-Server und Remote-X-Clients ist standardmäßig nicht verschlüsselt. Ein Angreifer mit einem Paket-Sniffer kann sie abfangen, was es möglich macht, etwas zu oder von dem Bildschirm des Benutzers gesendet angezeigt anzuzeigen. Der gebräuchlichste Weg X Verkehr zu verschlüsseln ist, eine Secure Shell (SSH) Tunnel für die Kommunikation zu etablieren.
Wie alle Thin Clients. wenn in einem Netzwerk, können Bandbreitenbeschränkungen behindern die Verwendung von Bitmap -intensive Anwendungen, die schnelle Aktualisierung erfordern große Teile des Bildschirms mit geringer Latenzzeit, wie etwa 3D-Animation oder die Bildbearbeitung unter Verwendung von X. Selbst ein relativ kleines unkomprimiertes 640x480x24 Bit 30 fps Videostream kann leicht überflügelt die Bandbreite eines 100 Mbit / s-Netzwerk für einen einzelnen Client. Im Gegensatz dazu haben moderne Versionen von X im Allgemeinen Erweiterungen wie MESA ermöglichen lokale Anzeige eines lokales Programms Grafiken optimiert werden, um das Netzwerkmodell zu umgehen und direkt auf die Grafikkarte steuern, für die Verwendung von Vollbild-Video, 3D-Anwendungen gemacht, und andere solche Anwendungen.
Client-Server-Trennung bearbeiten
Moderne X-Implementierungen verwenden Unix-Domain-Sockets für eine effiziente Verbindungen auf demselben Host. Zusätzlich gemeinsam genutzten Speicher (über die MIT-SHM Erweiterung) kann für eine schnellere Client-Server-Kommunikation verwendet werden. [11] Allerdings muss der Programmierer noch explizit aktivieren und die Shared-Memory-Erweiterung verwenden. Es ist auch notwendig Ausweichwege zu schaffen, um mit älteren Implementierungen zu bleiben kompatibel, und um mit nicht-lokalen X-Server zu kommunizieren.
Weitere Möglichkeiten, um eine funktionale Form der „Netzwerktransparenz“ Funktion von X, über das Netzwerk Tragbarkeit von Grafik-Service zu erreichen, sind:
- Virtual Network Computing (VNC), ein sehr niedriger Ebene System, das komprimierte Bitmaps über das Netzwerk sendet; Die Unix-Implementierung enthält einen X-Server
- Remote Desktop Protocol (RDP), die zu VNC in Zweck ähnlich ist, aber ihr Ursprung auf Microsoft Windows vor auf Unix-ähnliche Systeme portiert werden; cf NX. GoToMyPC. etc.
- Citrix XenApp. ein X-ähnliches Protokoll und Anwendungs-Stack für Microsoft Windows
- Tarantella. das stellt einen Java-basierten Remote-gui-Client für den Einsatz in Web-Browsern
Mehrere Bitmap-Anzeigesysteme X. Von Xerox voran kamen das Alto (1973) und den Star (1981). Von Apollo kam Computer-Display Manager (1981). Von Apple kam die Lisa (1983) und den Macintosh (1984). Die Unix-Welt hatte das Andrew Project (1982) und Rob Pike ‚s Blit Terminal (1982).
X leitet seinen Namen als Nachfolger ein vor 1983 Fenstersystem bezeichnet W (der Buchstabe X vorhergehenden im englischen Alphabet). W lief unter dem V-Betriebssystem. W verwendet, um ein Netzwerkprotokoll unterstützt Terminal und Grafikfenster, wobei der Server Anzeigelisten beibehalten wird.
Herkunft und frühe Entwicklung bearbeiten
Das MIT X Consortium und dem X Consortium, Inc. bearbeitet

The Open Group bearbeiten
X.Org und XFree86 bearbeiten
Die X.Org Foundation bearbeiten
Die richtigen Namen für das System sind im Handbuch Seite als X aufgeführt sind; X-Window-System; X Version 11; X-Window-System, Version 11; oder X11. [48]
Wichtige Begriffe bearbeiten
Das X Window System hat Nutzung eine Reihe von Begriffen nuanciert, wenn sie gemeinsame Nutzung im Vergleich, vor allem „Anzeige“ und „Bildschirm“, eine Teilmenge von denen hier der Einfachheit halber gegeben:
Der Begriff „Anzeige“ sollte nicht mit dem mehr Fachjargon „Zaphod Anzeige“ verwechselt wird. Letzteres ist eine seltene Konfiguration mehrere Benutzer von einem einzelnen Computer zu besitzen jeweils einen eigenen Satz Display, Maus und Tastatur ermöglicht, als ob sie getrennte Computer verwendet haben, aber auf einem niedrigeren Pro-Arbeitsplatz-Kosten.