図1 Xでは,クライアント/サーバー方式を用いてGUI環境を分散処理します。XサーバーとXクライアントという2種類のソフトウエアが協調して動作することでGUI環境を実現しています。スタントアロンでは,1台のパソコン上で,サーバーとクライアントの両方が動いています。
図1 Xでは,クライアント/サーバー方式を用いてGUI環境を分散処理します。XサーバーとXクライアントという2種類のソフトウエアが協調して動作することでGUI環境を実現しています。スタントアロンでは,1台のパソコン上で,サーバーとクライアントの両方が動いています。
[画像のクリックで拡大表示]

 X Window System(以下,X)は,米マサチューセッツ工科大学のAthenaプロジェクトによって開発されたウインドウ・システムです。現在は,The Open Groupの下部組織であるX.org Foundationが開発を行い,オープンソース・ソフトウエアとしてXを公開しています。Xは,多くのLinuxディストリビューションにおいて,デスクトップ画面を構成する主要ソフトウエアとして採用されています。

 Xは,Linuxが普及する以前から,UNIXで動作する定番のウインドウ・システムとして広く利用されていました。そのためLinuxにおいても,当然のようにXがウインドウ・システムに採用されました。しかし,Linuxの主なプラットフォームとして利用されているパソコンには,Xの搭載に大きな問題がありました。パソコンの画面描画に使われるグラフィックス・カードなどが多種多様なため,限られたものにしかX用のデバイス・ドライバを用意できなかったのです。

 この問題を解決するべく,「XFree86 Project」という団体が結成されました。XFree86 Projectは,The Open Groupが開発したXをベースに,パソコン用のグラフィックス・カードのデバイス・ドライバを組み込んだXの開発・提供に取り掛かりました。その成果物が,「XFree86」です。

 XFree86は2004年,バージョン4.4.0においてライセンスが変更され,宣伝条項が追加されました。これで,Linuxに適用されているランセンスのGNU GPLと相いれない部分が生じることになりました。このため,Linuxディストリビューションの供給元の多くは,GNU GPLと矛盾しない「X.org」を採用しました。X.orgは,XFree86のライセンス変更直前のソース・コードをベースに,X.org Foundationが開発・提供しているXです。

 Xの特徴は,(1)クライアント/サーバー方式を採用していること,(2)ウインドウ・マネージャというX上で動くソフトウエアを用いてルック・アンド・フィールをカスタマイズできること,です。

 Xでは,クライアント/サーバー方式を用いて,GUI環境を分散処理します。具体的には,XサーバーとXクライアントという2種類のソフトウエアが協調して動作することでGUI環境を実現しています(図1)。

 Xクライアントには,ウインドウ・マネージャという特別なソフトが存在します。ウインドウ・マネージャは,ウインドウの見た目やマウスの操作方法,ウインドウの形状などを規定します。また,例えば,GNOMEなどのデスクトップ環境は,ウインドウ・マネージャの機能を利用して動作しています。