ネットワーク - みる会図書館


検索対象: 入門X Window
28件見つかりました。

1. 入門X Window

第 1 章 X ウインドウシステム ・ネットワーク透過性 ・数多くのプラットフォーム ( ワークステーションおよび PC 環境 ) で動作可能 ・豊富なカスタマイズ機能 ・種々の GUI (Graphical User lnterface: グラフィカル・ユーザーインターフェ イス ) スタイルをサポート ( これは利点でもあり欠点でもある ) ・日本語入力を含む国際化機能 X 以外のウインドウ環境 (GUI 環境 ) としては、 AppIe Macintosh の GUI や IBM PC などの Microsoft Windows ( 以下 Windows と略す ) などがある。これ らのウインドウ環境と X との最大の違いは、 X がネットワークの能力を最大限 に生かして使えるように設計されていることであろう。実際、 X が孤立した 1 台 のワークステーションで使われることはほとんどなく、ネットワークに接続され た複数台のワークステーション環境上で利用されることが常である。それに対し て、 Macintosh や Windows は、独立した 1 台のマシンで使われることが主で、 たとえば、手元のマシンからネットワークに接続された別のパーソナルコンピュー タでアプリケーションを実行するといったことは簡単にはできない。 X が高い ネットワーク機能を持っていることは、 X の誕生が MIT の分散環境プロジェク ト (Athena プロジェクトや Argus プロジェクト ) に由来することからもうなすけ よう ( コラム「 X の歴史」を参照 ) 。 また、多くの機種に移植されていることから、世界中の先進的ューザーによる ( たいていはフリーの ) アプリケーション群の蓄積があることも見逃せない。これ らのソフトウェアは lnternet などの広域ネットワークを通して配布されるほか、 MIT から出される X のソースコードにも収録されている ( 以降の章では、 X を 利用する上で欠かせないフリーソフトウェアの使い方についても紹介していく ) 。 そして、これらのフリーソフトウェアの多くはソースコードが公開されているの で、ウインドウ環境でのアプリケーションやユーザーインターフェイスに興味の ある学生や技術者にとっては貴重な資料としての価値もある。 それでは、 X ウインドウの特徴についてもう少し詳しく見ていくことにしよう。

2. 入門X Window

20 X サーノヾ 第 1 章 X ウインドウシステム キーホード マウスロ ワークステーション A クライアント ネットワーク ウイントウマネージャ ディスプレイ ワークステーション B クライアント X プロトコル 図 1 ー 1 X ウインドウのネットワーク透過性 る。 X がネットワーク透過性を重視したウインドウシステムとして設計された背 景には、 X の開発母体となった MIT の計算機環境がある。一般に大学では、計 算機を 1 機種に統一することはます不可能で、それぞれの研究プロジェクトが購 入したり、寄付を受けたりした種々のワークステーションが次々にネットワーク に接続されて異機種混合 ( へテロジニアス ) な環境が成長していく傾向が強い。そ ういった環境では、機種やべンダーに依存しないネットワーク透過的なシステム のニーズが非常に強くなる。したがって、異なった機種間で自由にウインドウを 開けること、また、できるだけ多くの機種に簡単に移植できるウインドウシステ ムであることは当然の要求であった。 1.2.3 ウインドウマネージャ さて、以上のように X ウインドウ環境は、 1 つの X サーバブロセスと、複数の クライアントによって成り立っているわけだが、クライアントの中には、、ウインド ウマネージャ〃と呼ばれる、特別な役割を持ったものがある。ウインドウマネー ジャは、複数のウインドウが画面に表示されている場合に、その位置や大きさ、 表示の重なり具合などを利用者が変更するときの処理を担当している。 また、ウインドウにタイトルバーを付けるなどの表示上の、、飾り〃を施すのもウィ ンドウマネージャの役割である。利用者から見ると、ウインドウマネージャは画 面を操作するための最も基本的なヒューマンインターフェイスを管理しているこ

3. 入門X Window

30 第 1 章 X ウインドウシステム もに通常のワークステーションより大幅に簡略化されている。価格も通常のワー クステーションと比較するとかなり安価である。 最も単純な X 端末は純粋にサーノヾの機能しか持っていないが、最近の機種では、 ( ホストマシンの負荷を減らすために ) クライアントのうち、ウインドウマネージャ だけは自分で実行するものや、ある程度のフォントを最初から持っているものも ある。 X 端末は単体では何の使い道もなく、ネットワークに接続されることで初めて 機能を発揮する。ネットワーク上の計算資源を使うだけのために存在しているわ けである。ネットワーク透過性という X の設計哲学を極端な形で具体化した機器 だといえよう。 X 端末については 10 章で詳しく述べる。

4. 入門X Window

10.7 ントはホストマシンの資源を無駄に消費するだけである。 運用上の注意 229 このようなことが起こ らないようにするには xdm を用いる。 xdm は接続しているサーバからの応答がな くなると、そのサーバに接続しているクライアントを終了させてくれる。 ■ホストマシンの CPU パワー 普通のキャラクタ端末をワークステーションに接続した場合には、端末 1 台に っき、 1 ~ 3 個程度しかプロセスを消費しないが、 X 端末は 1 台につき 7 ~ 11 個 以上のプロセスが動く。このため、ホストマシンとするワークステーションには CPU パワーが必要であり、メインメモリも多く載せたものが望ましい。ホストマ シンや使用するアプリケーションにもよるが、簡単なメールの読み書きや文書作 成であれば、 1 台のワークステーション ( メインメモリ 24MB 以上、スワップ領域 100MB 以上 ) に 5 ~ 6 台の X 端末 ( メインメモリ 8MB ) から始めてみるのがよい だろう。単なる端末だと思って不用意にホストマシンにつなぎすぎるとホストマ シンに負荷がかかりすぎて使いものにならなくなる場合がある。注意してほしい。 ーフォント X 端末はフォントをネットワークを介してロードするため、サイズの大きな漢 字フォントなどのロードはかなり時間がかかる。また、いろいろなフォントをロー ドしていると X 端末のメモリがあふれてしまうことがある。このようなことを避 けるためには、漢字フォントを ROM で持っているものはそれを使い、なるべく 使うフォントの種類は少なくするとよい。これによって、不用意なホストマシン との通信をなくすことができる。 ・ X 端末とホストマシンは同じネットワーク内に 一般的に X 端末は、ほとんどのクライアントはホストマシンで実行され、ネッ トワーク的には、 X 端末とホストマシン間での通信が多くなりがちである。この ため、 X 端末とホストマシンは、ルータやプリッジなどのネットワーク接続機器 を介してネットワーク間に置くよりも、単一のネットワーク ( セグメント ) 内に置 いたはうがよい。

5. 入門X Window

7.8 7.8 フォントサーバ フォントサー ノヾ X11R4 までは、このようなネットワークを介してフォントデータを読み込む機 能に関しては、 X ウインドウシステムとしては特別な取り決めはなかった。この ため、 X 端末のメーカーごとに各社各様にサポートされていた。しかし、 X11R5 ではこのような処理を行うための規約が決まり、 X サーバにネットワークを介し てフォントを読み込む機能 ( フォントサーバ機能 ) が新しく加わった。 X11R5 に対 応している X 端末は、この機能を用いてフォントを読み込んでいるものもある。 X11R5 のフォントサーバ機能は、 X サーパ内のフォント・アクセスライプラリ とフォントサーバの 2 つから構成される。フォントサーバとは、 X サーバとは別 のプログラムであり、 X サーバを、、クライアント〃としてネットワークを介して フォントデータをやり取りする機能を持っている。フォント・アクセスライプラリ とは、フォントサーバとデータのやり取りをするためのライプラリである。 フォントサーバを利用している X サーバは、フォントが必要になるとディスク にフォントを読みにいく代わりに、フォント・アクセスライプラリを通してフォン トサーバにフォント要求を出す。フォントサーバはこの要求を受けて、ディスク からフォントファイルを読み込み、読み込んだデータをネットワークを介して X サーバに返す。ちょうど図 7ー8 の tftpd と同し役割をする。 フォントサーバは、フォントパスの 1 っとして指定できる。たとえば、 remote hostl で動いているフォントサーバからフォントを受け取ろうとする場合には次 のように xset を用いて指定すればよい。 % xset + 土 p tcp/remotehostl : 7000 このようなフォントサーバを用いることによって、マルチベンダーのワークス テーションで構成されるネットワーク環境での各ワークステーション間でのフォ X ウインドウシステムで提供されるフォントファイルには、大きく分 フォントファイルのフォーマット ン間でのフォントの違いをうまく吸収できる。 ント共有をエレガントに行うことができ、さまざまなメーカーのワー クステーショ

6. 入門X Window

2 19 第 を意識しなくてもいいようになっている ( ネットワーク透過性 ) 。 り取りをすることによって、サーバやクライアントからは介在するネットワーク している。サーバとクライアントはネットワークで接続され、 X プロトコルでや トという 2 つのプロセスが協調して動くことによってウインドウシステムを構成 2 章ですでに説明したように、 X ウインドウシステムは、サーバとクライアン ます、 X 端末のメカニズムから説明しよう。 10.1 メカニズム 説明する。現在、 X 端末は 20 社以上から発売されている。 本章では、このような X 端末のメカニズム、メリットやデメリットなどについて 能しか持たない。このためワークステーションに比べ管理が非常に簡単である。 端末 ) を生み出した。 X 端末は文字通り、、端末〃であるため、 X サーバを動かす機 ライアント・モデルが、手軽に X の GUI を利用できる X ウインドウ専用端末 (X ションでしか使えなかった。しかし、 X ウインドウシステムを構成するサーバク ほんの少し前までは、 X ウインドウシステムは UNIX が稼働するワークステー X 端末

7. 入門X Window

226 第 10 章 X 端末 からは特殊なディレクトリの下にあるように見えフォントパスに追加できる。た とえば、 NEC の X ステーションの場合には、 /built-in-font/ である。 ROM フォントはアクセスが速いので、用意されている場合には、 ROM フォン トをフォントパスに入れて積極的に使用すべきである。特に、文字表示が主体で ある xterm や emacs では、 ROM フォントを使用することで余分なメモリも消費 せすに高速な文字表示ができる。 ほとんどの X 端末は上記の機能で分類できるが、これ以外に最近の X 端末に は次のような特徴を持つものがある。 ・ローカルクライアント 最近の X 端末は、 X サーバだけにあきたらす、ウインドウマネージャのような よく使うクライアントを X 端末側で実行できるものがある。このような X 端末 側で実行されるクライアントをローカルクライアントという。 X 端末によっては ローカルクライアントを作成するための開発キットが別売されているものもある。 ・ SNMP X 端末は端末とはいえネットワーク上に IP アドレスを持っているので、ネ ットワークエージェント * 1 として管理できるように SNMP (Simple Network Management Protocol) をサポートしているものがある。 SNMP をサポートし ているものはネットワークマネージャからの管理が可能である。 ■周辺装置 ハードディスク、プリンタ、タッチパネル、バーコード・リー久スピーカー マイクなどのさまざまな周辺装置をサポートした X 端末も現れはしめている。 10.5 メリット これまでは、 X 端末のメリットはなんといっても安い価格で GUI 環境を利用で ネットワークマネージャから SNMP で管理されるネットワーク構成機器のこと。 しかし、トータルなランニングコストを考えると依然として きることであったが、最近では低価格のワークステーションの出現でその地位は 脅かされつつある。 * 1

8. 入門X Window

220 第 10 章 X 端末 このため、ネットワークの先につながっているワークステーションでクライア ントを動かし、その表示を自分が使っているワークステーション上に表示させて みたり、極端な場合には自分が使っているワークステーションでは X サーバだけ を動かして、クライアントは全部他のワークステーションで実行して作業をする ことが可能なのである。つまり、ネットワークの先につながったワークステーショ ンで実行しているクライアントも、 X サーバを使用しているワークステーション で実行しているクライアントも全く同しように使用できる。 このような特徴を積極的に利用したコンピュータが X 端末である。 X 端末は 上記で説明した例で、ワークステーションで X サーバだけを動かしているのと同 しように、サーバだけが動くコンピュータである。 X ウインドウシステムの使い 勝つ手としても X サーバだけが動いているワークステーションと同じだと考えて よい。 10.2 ソフトウェアとハードウェア X 端末は X サーバだけが動けばよいので、通常の UNIX が動くワークステー ションとは異なり、ハードウェアやソフトウェア ( オペレーティングシステムな ど ) を簡素化できる。つまり、 X サーバだけが動くためには、ワークステーション に必要とされるようなオペレーティングシステムやハードウェアはいらないので ある。 ソフトウェア的にみると、最低 1 つのプロセス ( サーバ ) が動けばよい。このた め、 X 端末のオペレーティングシステムとしては UNIX のようなマルチタスク機 能やファイルシステムは必要なく、 X サーバに特化したプログラムの実行機能、 画面への描画機能とネットワーク機能程度があれば十分である。 ードウェア的には、最低限、ディスプレイ、キーポード、マウス、 CPU 、メ インメモリ、ネットワークインターフェイスがあればよいことになる。 10.3 フォントの取り扱いとログイン処理 このような簡素なハードウェアとソフトウェアからなる X 端末で X ウインド ウシステムを構成する場合に、解決しなくてはならない問題が 2 つある。フォン トの扱いとログイン処理である。

9. 入門X Window

10.3 10.3.1 フォント フォントの取り扱いとログイン処理 221 この 7.3 節で説明したようにフォントはファイルとして管理されているので、 X 端 末本体で管理しようとするとファイルを扱えるようにしなくてはならない。 ためには、ハードディスクやファイル管理用のソフトウェアが必要になる。つま X 端末に付け加える必要が生しる。これは、 X 端末の管理の手間を増やし、価格 り、ファイルを扱えるようにすると、余分な ( ? ) ハードウェアとソフトウェアを を高くする。 ログイン ) 機能である。この機能を用いると TELNET プロトコルを用いてネッ TeInetSession 機能とは、 X 端末に組み込まれている遠隔ログイン ( リモート ・ TeInet Session 機能 能と X11R4 から提供されている xdm クライアントである。 このような問題に対応するのが X 端末に組み込まれている TeInet Session 機 グインメカニズムを代行する X のクライアントが必要なのである。 バには X のクライアントしか表示を行うことはできないからである。つまり、ロ 用の UNIX のログインメカニズムをそのまま使用できない。なぜならば、 X サー login) を使用できる。しかし、 X 端末は、 X サーバしか動かないため、文字端末 合、ログイン処理は UNIX システムが提供するログインメカニズム ( 洫 it 、 getty 、 通常の文字端末 ( キャラクタ端末、 ASCII 端末ともいう ) を UNIX に接続した場 10.3.2 ログイン処理 (xdm) ンに置いてある。 る色のデータベースが置かれており、 X 端末によっては、 X サーバもホストマシ に対するホストマシンと呼ぶ。ホストマシンには、フォントや X サーバが利用す X 端末が利用するファイルを管理しているワークステーションのことを X 端末 サーバ自身もネットワークから読み込むものもある。 もファイルが扱えるようにしているのである。なお、次節で説明するように、 X こうすることによってハードディスクやファイル管理用のソフトウェアがなくて クステーションに置いておき、それをネットワーク機能を用いて読み込んでいる。 バの実行に必要なファイル ( フォントを含む ) を、ネットワークに繋がっているワー X 端末はこの問題をネットワーク機能を用いて解決している。すなわち、 X サー

10. 入門X Window

1.2 X ウインドウの設計方針 1.2 X ウインドウの設計方針 1.2.1 サー′ヾクライアント・モデル 1 サーバクライアント・モデルとは、 2 種類のプロセス ( サーバとクライアント ) 、 相互に通信し合いながらなんらかの処理を実現するしくみのことである。サーノ プロセスは、クライアントに対してなんらかのサービスを提供している。たと冫 ばデータベースサーバは、データの検索・追加・削除などのサービスをクライアこ トに対して提供する。 X ウインドウサーバ ( あるいは単に X サーバ ) は、 X の : プリケーションプログラム ( クライアント ) に対して、画面への描画、ユーザー 力の通知、ウインドウの生成・消滅などのサービスを提供している。 X サーバは、ディスプレイ ( 画面 ) ごとに 1 つずっ割り当てられている。実際い 画面に何かを書き込むのは X サーバだけで、クライアントは X サーバに描画 依頼するだけで、直接画面にアクセスすることはできない。また、キーポード マウスなどの入力デバイスを直接アクセスするのも X サーバだけで、クライアこ トは X サーバ経由でユーザーの入力を受け取るようになっている。このように 複数のクライアントが共有する資源 ( 画面、入力デバイスなど ) を一括管理するこ とも X サーバの大きな役割である。 1.2.2 ネットワーク透過性 X サーバとクライアントは同しマシンの上で動作してもよいが、ネットワー で結合された別のマシン上で動作しても構わない。たとえば、クライアントがビ、 トマップディスプレイを持たないメインフレームマシン上で動作していて、そし 画面表示を ( ネットワークで接続された ) 別のワークステーションで見る、とい・ たことが可能である ( 図 1 ー 1 ) 。このとき、サーバが動作するマシンとクライアこ トが動作するマシンは同し機種や同し OS である必要はない。 X サーバとクラノ アント間の通信は、Ⅸプロトコル〃とよばれる通信規約によって規定されており この規約を守っている限り、それぞれのプロセスが動作するマシンがどんなもし であるかにかかわらすに処理を行うことができる。この特長は、ネットワーク」 にいくつもの異なる機種のコンピュータが接続されている異機種混合環境に非斧 に適した特性であるといえる。 これが、、ネットワーク透過性〃と呼ばれている X ウインドウの最大の特徴で」