X Window System

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

KDE 4.2 GNOME 2.20 Xfce 4.4

X Window System (též X11 nebo jen X) je v informatice souhrnné označení pro software, který umožňuje vytvořit grafické uživatelské prostředí (GUI). Používá se zejména v unixových systémech, kde se stal standardem. +more Využívá model klient-server, skládá se z několika komponent, které jsou navzájem nezávislé (zejména X Server, X protokol, knihovna Xlib) a je portován na mnoho platforem (unixové systémy - Linux, BSD, macOS, Solaris, ale též Microsoft Windows). Mezi nejznámější desktopová prostředí postavená na X Window System patří KDE a GNOME.

...

Charakteristika

X Window System byl vyvinut na MIT v roce 1984 jako snaha o sjednocení GUI prostředí a přenositelnost grafických aplikací. Současná verze X11 pochází z roku 1987. +more Mezi nejznámější implementace používané na IBM PC dříve patřilo XFree86 a v současné době pak referenční implementace X. Org. X Window System je důsledně zpětně kompatibilní (staré aplikace je možné zobrazovat i v novém prostředí).

X Window System se skládá z několika základních komponent (X Server, X protokol, knihovna Xlib). Od počátku byl navržen jako nezávislý na konkrétní platformě a zároveň jako síťově transparentní, takže spuštěný program (aplikace) může vytvořit svůj výstup na jiném počítači, než na kterém je sám spuštěn (i na více různých počítačích). +more Využívá model klient-server, kde vstupy a výstupy zajišťuje X Server ovládající příslušný hardware (grafická karta, myš, klávesnice) a klientem jsou jednotlivé aplikace. Pro komunikaci mezi aplikacemi a X Serverem je používán X protokol, který je přenášen pomocí IPC nebo TCP/IP. X Server tedy zajišťuje přímý kontakt s uživatelem a přijímá pokyny pro zobrazování od aplikací. Aplikace od serveru naopak přijímají vstupy od uživatele a využívají zobrazovacích služeb, které jim X Server nabízí.

Knihovna Xlib umožňuje programátorovi interakci s X Serverem bez toho, aby musel znát detaily X protokolu, avšak velmi málo aplikací používá přímo knihovnu Xlib. Většina aplikací místo toho používá widgety z různých nadstavbových frameworků (GTK+, Qt, Motif atd. +more), které poskytují vyšší míru abstrakce (menu, tlačítka, dialogy).

V grafickém uživatelském prostředí jsou aplikace tradičně zobrazovány v podobě oken, což je umožňuje od sebe odlišit a mít jich na obrazovce více najednou (výjimkou je typicky menu a panel s vestavěnými aplikacemi, jako například hodiny). X Server však nezajišťuje logickou obsluhu zobrazovaných informací, a proto je pro správu zobrazených oken jednotlivých aplikací používán samostatný správce oken . +more Správce oken umožňuje uživateli organizovat zobrazené aplikace, resp. jejich okna (přesun a změna velikosti okna, horní lišta oken, ohraničení oken, překrývání atp. ). Z hlediska X Serveru je správce oken jen další aplikace (klient), a proto je snadno zaměnitelný. Vzorová implementace X Window System (X. Org) obsahuje pouze jednoduchého správce oken (TWM). Existuje mnoho dalších správců oken, přičemž mezi nejznámějším patří IceWM, FVWM, Sawfish, Window Maker, Kwm, Metacity, Fluxbox, Compiz a další.

Pro vytváření grafických uživatelských prostředí se kromě různých správců oken používají i další různé doplňující aplikace (taskbar, panel, hodiny, …), které jsou ze stejných důvodů také zaměnitelné. Proto mohou grafická prostředí postavená nad X Window System vypadat různě. +more Mezi nejznámější desktopová prostředí patří KDE a GNOME.

Historie

Grafické prostředí pro operační systém UNIX začal vyvíjet institut MIT (Massachusetts Institute of Technology) v r. 1984. +more X Window System byl uživatelům k dispozici již následujícího roku ve verzi 9 (X9). Během dvou následujících let byly vyvinuty verze (release) 10 a 11. Označení X11 pak přetrvalo od roku 1987 dodnes a další verze jsou označovány jako revize (revision, např. X11R7. 5 z roku 2009). Současná podoba systému oken X se principiálně nemění a nová vydání jsou rozšiřující především z pohledu způsobů implementace dalších rozšíření.

MIT nezůstal již v 80. letech ve vývoji X osamocen. +more Na rozsáhlém projektu spolupracovala řada univerzit, renomovaných firem (DEC, Sun Microsystems, IBM, Hewlett-Packard, AT&T aj. ) a nezávislých odborníků. Spolupracující firmy se také stávají členy skupiny X Consorcium, založené pro podporu a vývoj systému X. Dnes je X považován za průmyslový standard grafického prostředí pracovních stanic a je definován v SVID jako X11Window System. SVID jako součást téhož svazku definuje i nadstavbu X s označením NeWS (Network/extensible Window System), integruje distribuované grafické prostředí uživatele a jako mechanizmus používá jazyk PostScript. Původním autorem NeWS je firma Sun Microsystems.

Nadace X. +moreOrg vede projekt X se současnou referenční implementací X11R7. 5 (verzí 11 revizí 7. 5 z roku 2009), dostupnou jako Svobodný software pod licencí MIT a podobnými licencemi.

X Server

X Server je specifický program, který ovládá hardware a umožňuje tak vytvořit grafické uživatelské prostředí (GUI). Obsluhuje jak vstupní zařízení (myš, klávesnice, touchpad), tak zobrazující hardware (grafická karta), které vytváří viditelný obraz (bitmapu, tzv. +more X display, včetně 2D a 3D implementací). X Server se skládá z hardwarově nezávislé části (implementace X protokolu) a hardwarově závislé části (ovládání grafické karty a vstupních zařízení). Implementace X Serveru v XFree86 byla monolitická, takže každá grafická karta měla vlastní X Server. Novější implementace v X. Org používá pro hardwarově závislé části moduly, které jsou v případě potřeby do univerzálního X Serveru zavedeny.

Velkou nevýhodou X Serveru je, že přímo přistupuje k hardware (ke grafické kartě), a proto musí v unixových systémech být spuštěn s právy uživatele root (správce počítače), což způsobuje bezpečnostní problémy v případě, že je v X Serveru programátorská chyba. Tento nedostatek v Linuxu odstraňuje použití KMS (Kernel mode-setting), které již bylo v roce 2009 nasazeno v distribuci Moblin 2. +more0 (pokračovatelem Moblinu je distribuce MeeGo). Připravuje se nasazení i v ostatních distribucích a též se uvažuje o začlenění KMS do OpenBSD.

Reference

Externí odkazy

[url=http://www.x.org/wiki]Oficiální stránky referenční implementace X.org[/url] * [url=http://www.abclinuxu.cz/desktopy]Snímky obrazovek[/url]

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top