当記事は、LinuxにおけるX Window Systemの仕組みについてご紹介します。
X Window Systemとは、LinuxやUNIXで使われているGUI環境を実現する仕組みです。X Window Systemは「X Window」や、単に「X」と呼ばれることもあります。
Linuxはコマンド操作を基本とした設計であるため、普段GUI環境のOSを利用している人にとっては操作が難しいOSでした。 そこで考案されたのが、X Window Systemです。
現在、X Window Systemの開発は「X.org」という団体によって行われています。
X Window Systemの構成
X Window Systemはネットワークでの利用を想定しているため、「クライアント/サーバ」方式を採用しています。
「Xサーバ」は、キーボードやディスプレイといった入出力デバイスの管理を行います。
「Xクライアント」は、GUIのユーザーアプリケーションで、コンソール端末を表示するソフト、ブラウザソフトなどがあげられます。
XサーバとXクライアントは同一コンピューター上での動作はもちろん、異なるコンピューター上で動作することも可能です。
Xクライアントは何かを描画した時に、直接出力デバイスを操作することができません。Xクライアントの描画情報は、Xサーバを介して出力デバイスに送られて描画されます。
XクライアントとXサーバ間の通信は、「Xプロトコル」という独自のプロトコルを使って行われています。
ディスプレイマネージャ
Linuxシステムの起動時にGUIでのログイン画面を提供するのが、「ディスプレイマネージャ」です。
ランレベルが「5」(GUIでの起動)に設定されているシステムでは、このディスプレイマネージャが起動することによってGUIのログイン画面を表示し、ログインを待ち受けます。
ディスプレイマネージャには複数の種類があり、ユーザーの好みに応じて選択して利用することができます。
ウィンドウマネージャ
「ウィンドウマネージャ」はXクライアントの1つですが、他のXクライアントと違い、ウィンドウの配置やデザインを制御する役割をもっているソフトウェアです。ウィンドウマネージャも多数の種類があり、好みに応じたものを選ぶことができますが、種類によってはまったく異なるユーザーインタフェースに変わってしまうこともあるため、変更する際には注意が必要です。
統合デスクトップ環境
現在ディストリビューションの多くでは、ウィンドウマネージャや関連アプリケーションを含めて、統一的な操作性が提供される「統合デスクトップ環境」を利用するのが一般的です。代表的な統合デスクトップ環境として、「GNOME」と「KDE」があります。
GNOMEやKDEを動作させるには、CPUやメモリなどのシステムリソースを多く必要とするため、あらかじめハードウェアの構成を確認しておく必要があります。
Xサーバの起動
CUI環境で起動しているシステム上で、コマンドラインからX Window Systemを起動するには、「startx」コマンドを実行します。 「startx」コマンドはXサーバを起動するための起動スクリプトで、X Window Systemを起動させるための各種の処理が行われます。
X Window Systemが起動するまでのおおまかな流れは、次のようになります。
■ startxの書式
startx
いかがでしたでしょうか。
ぜひ学習の際にお役立て下さい。