Nazwa X Windows (poprzez analogię do Microsoft Windows), chociaż rozpowszechniona, jest niepoprawna.
Najpopularniejszymi implementacjami X Window System są X.Org oraz XFree86.
Opis
System X tworzy okna, na których program może tworzyć obraz, oraz zajmuje się obsługą urządzeń wejściowych (myszki, klawiatury, tabletu). Serwer X może rysować tylko najprostsze obiekty (odcinki, wielokąty, elipsy, wyświetlać bitmapy, stawiać pojedyncze piksele), nie dostarcza natomiast żadnego interfejsu użytkownika, czyli przycisków, rozwijanych menu, pasków przewijania itp. Rysowaniem i obsługą tych elementów musi zająć się program, najczęściej jest to bibliotekawidgetów. System X nie zajmuje się również obsługą okien, nie dostarcza żadnych wbudowanych mechanizmów do ich przesuwania, zmiany rozmiaru, zamykania i uruchamiania programów itd., nie rysuje także pasków tytułowych dla okien – tym wszystkim musi zająć się osobny program, tzw. menedżer okien (ang.window manager).
X Window System zaprojektowany jest w architekturze klient-serwer, co oznacza, że składa się z dwóch elementów: z serwera, zajmującego się wyświetlaniem grafiki oraz obsługą klawiatury i myszy, oraz z klienta, czyli oprogramowania żądającego od serwera zmian zawartości okna. Oba elementy komunikują się ze sobą przy pomocy protokołu przezroczystego sieciowo, co oznacza, że nie ma znaczenia, czy oba elementy systemu działają na tym samym komputerze, czy na dwóch różnych maszynach. Jedna maszyna może wykonywać program, druga może wyświetlać wynik działania programu. Przykładem może być sytuacja, w której użytkownik pracuje zdalnie na odległym komputerze, korzystając z X Window System. Jego lokalny komputer (ten, przy którym siedzi) działa jako serwer X, zapewniając graficzny interfejs użytkownika. Na zdalnym komputerze działa uruchomiony przez użytkownika program, będący klientem serwera X działającego na maszynie lokalnej. Z serwera na maszynie lokalnej program na maszynie odległej otrzymuje instrukcje sterujące użytkownika i na maszynę lokalną przesyła wyniki swojego działania.
Twórcy protokołu X przewidzieli możliwość jego rozszerzenia o nowe funkcje. Na przykład na potrzeby biblioteki OpenGL powstało rozszerzenie GLX.
XDMCP (X Display Manager Control Protocol), twm (Tom’s Window Manager), rozszerzenie SHAPE, nowe czcionki
X11R5
1991-09-05
PHIGS (Programmer’s Hierarchical Interactive Graphics System) 3D API używane przez rozszerzenie PEX, Xcms (system zarządzania kolorem), xfs (X font server), nowa gałąź kodu X386, rozszerzenie XVideo; ostatnie wydanie MIT X Consortium
X11R6
1994-05-16
ICCCM v2.0 (Inter-Client Communication Conventions Manual); Inter-Client Exchange; X Session Management; rozszerzenia SYNC, XIE (X Image Extension), XTEST, XInputExtension, BIG-REQUESTS, XC-MISC; pojawia się gałąź kodu XFree86; pierwsze wydanie The X Consortium
X11R6.1
1996-03-14
rozszerzenia DOUBLE-BUFFER, RECORD, XKEYBOARD
X11R6.2 X11R6.3 (Broadway)
1996-12-23
rozszerzenie LBX (Low Bandwidth X); ostatnie wydanie przez X Consortium; X11R6.2 is the tag for a subset of X11R6.3 with the only new features over R6.1 being XPrint and the Xlib implementation of vertical writing and user-defined character support[2](ang.); ostatnie wydanie The X Consortium
KDrive, AIGLX, ulepszenia EXA, ulepszenia wsparcia różnych systemów operacyjnych i wsparcia dla różnych platform sprzętowych (Release Notes for X11R7.1(ang.))
X11R7.2
2007-02-15
XCB (X C Binding), usunięcie rozszerzenia LBX, dodanie rozszerzenia XACE (security framework), ulepszenia autoconfig (nota wydania 7.2(ang.))