Xサーバーが事前定義された機能セットを持つライブラリではなくサーバーであるのはなぜですか? [閉鎖]

Xサーバーが事前定義された機能セットを持つライブラリではなくサーバーであるのはなぜですか? [閉鎖]

最近、私は初めて「X Window Server」という概念に触れました。それをよく読んで、重要な概念の大部分を理解しようとした後 - 主に私は「現代のコンピューティング時代」に生まれ、「実際の端末」や「Xを実行するのに十分強力ではないPC」にアクセスしたことがなかったからです。 client" 」——一つのことが混乱しています。

Xサーバーが事前定義された機能セットを持つライブラリではなくサーバーであるのはなぜですか?

私は以前に受け取ったいくつかの質問、特に次の質問から多くを学ぶことができました。

私が理解したように、X Serverはもともとネットワークを介した通信をサポートするように設計されています。一部の古いコンピュータは、グラフィック要素を実行するのに十分強力ではなかったためです。これがXサーバーがサーバーとして機能するように設計された唯一の理由ですか?ネットワーク経由で「リクエスト」を受け取り、「グラフィック要素」で応答しますか?

Xサーバーがローカルでもサーバーとして機能する他の理由はありますか?たぶん私はいくつかの詳細を見逃しているかもしれませんし、それが私が今まで学んだことすべてを「接続」するために理解しようとしています。

可能であれば、過去にターミナルがX Windowサーバーとどのように通信したかを実際に例に挙げることができますか?私が想像できるのは、ターミナルコンピュータ(黒いターミナル画面以外は何も実行しません)でいっぱいの建物とグラフィックインターフェイスを実行できる1台のコンピュータだけです。人々がこのコンピュータを共有してエンドコンピュータと通信して重い作業を行ったことがありますか?

ありがとうございます!

答え1

端末について大きな誤解を抱いているようです。

テキスト端末があり、X11端末があります。 X11 端末は X サーバーを実行します。これはシンクライアントとも呼ばれます。

Xサーバーを実行しているワークステーションがあるかもしれません。プロセスサーバーに接続します。地下室には強力な機械があります。

他の利点は次のとおりです。

  • これはプロセス(グラフィックハードウェア、キーボード、およびポインティングデバイスへのアクセスを含む)ですが、プロセスだけです。これには利点があります。グラフィックハードウェア、キーボード、およびポインティングデバイスにアクセスできないプロセスがある可能性があります。 X11-vncブリッジを形成するVNCサーバーでもあります。テストに使用できます(人の代わりにロボットプロセスにそれを制御させる)。
  • これは別のプロセスでした。コンピュータをマルチコードにアップグレードしました。ソフトウェアを変更せずにこれらのコアを使用します(最大数のコア)。
  • 複数のモニター、キーボード、マウスがある場合は、構造的にそれらを別々の座席(ターミナル)に分割するのは簡単です。
  • ユーザーの切り替えが簡単になります。
  • 他のプロセスはハードウェアにアクセスできません。ライブラリアプローチを使用するのと同じくらい安全です(X11には、再設計で解決できるいくつかのセキュリティ問題があることに注意してください)。
  • ウィンドウマネージャも別のプロセスです。これにより、デスクトップ環境を選択できます。したがって、X11サーバー用のプロセス1つ、ウィンドウマネージャー用のプロセス1つ、ディスプレイマネージャー(ログインサービス)用のプロセス1つ、あれこれのためのプロセスです。ログアウトせずにデスクトップ環境を変更できるほど柔軟性があります。

答え2

これは、複数のキーボード、その他の入力デバイス、および複数のモニターを持つ単一のハードウェア(概念的にはワークステーション)でディスプレイサービスを提供および調整するため、サーバーです。

複数のプロセスがローカルまたはリモートで接続され、画面スペース、入力フォーカス、カラーマップスロット、およびその他のリソースをネゴシエートできます。これらのプロセスは、互いに直接交渉したり、異なる要件を調整したりすることはできません。 X Windowsサーバーは、すべてのクライアントプロセスがワークステーションのすべての機能にアクセスできると信じるサービスを提供します。

関連情報