X11は正確に何ですか?

X11は正確に何ですか?

X11に関するWikipediaを読んでいますが、次のようになります。

標準ディストリビューションは、ほとんどのUnixシリーズオペレーティングシステムでグラフィカルユーザーインターフェースを構築するための標準ツールキットとプロトコルスタックを提供する完全でシンプルなディスプレイとインターフェースソリューションです。

しかし、彼はこう言いました。

X は主にプロトコルとグラフィックの基本要素を定義します。つまり、ボタン、メニュー、ウィンドウのタイトルバースタイルなど、アプリケーションのユーザーインターフェイスデザインの仕様は意図的に含まれていません。

それでは、X11はボタンやウィンドウパネル/フレームなどのウィジェットを提供しますか?グラフィックプリミティブとは何ですか? X11は正確に何を提供しますか?

また、次のように指摘しました。

Xはユーザーインターフェースを必要としません。別のクライアントプログラムがこれを処理できます。プログラムは、ユーザーインターフェイスなしでXのグラフィック機能を使用できます。

どういう意味ですか?

答え1

多くの単語と同様に、「X11」も複数の意味を持つことができます。

「X11」は厳密に言えば通信プロトコルです。 「Xは主にプロトコルとグラフィックプリミティブを定義します...」と「Xはユーザーインターフェイスを強制しません...」という文で、これがXが参照するものです。 Xはプロトコルファミリで、X11は11番目のバージョンで、過去25年間使用された唯一のバージョンです。

あなたの質問の最初の文は、X11プロトコルのリファレンス実装であるソフトウェアディストリビューションを表します。このソフトウェアディストリビューションのフルネームは「X Window System」です。このディストリビューションには、X11プロトコルでサーバーとして機能するプログラム、X11プロトコルでクライアントとして機能するプログラム、Kuなどを使用するコードを含むコードライブラリが含まれています。歴史の中、現在、MITが作成したソフトウェアディストリビューションの管理者は次のとおりです。X.Org財団

X11プロトコルを使用すると、アプリケーションはウィンドウなどのオブジェクトを作成し、デフォルトの描画基本機能(長方形の塗りつぶし、テキストの一部など)を使用できます。ボタン、メニューなどのウィジェットはクライアントライブラリで作成されます。 Xウィンドウシステムには基本ライブラリ(Athenaウィジェットセット)しかし、ほとんどのアプリケーションは、次のようなより高いレベルのライブラリを使用します。GTK+Qtトピック、等。

一部のX11プログラムには、コマンドラインツールなどのグラフィカルユーザーインターフェイスがありません。設定シェルそしてxdoツール、キーバインディングプログラム、例:xbindkeysなど。もちろん、ほとんどのX11プログラムにはGUIがあります。

答え2

X.org Foundation Windowingとも呼ばれるX11は、デフォルトでKDEやGNOMEなどの他のデスクトップ環境でGUIを管理するための抽象インターフェースを提供するために使用されます。 Xに依存しない場合、KDE ​​/ GNOME /その他のシステムは、低レベルのコーディング操作を完了するために独自のコードを書く必要があります。代わりに、KDE ​​/ GNOMEはX(「クライアント」が接続されているサーバープロセスとして実行されます)と前後に通信します。

答え3

いくつかの概念:
-Xウィンドウシステムウィンドウシステム。 (ディスプレイデバイスの周りでウィンドウを移動し、マウスやキーボードと対話することができます)
-X.OrgサーバーX.Org FoundationのX Windowsシステムのオープンソース実装です。
-xtermX Windowsシステム用のターミナルエミュレータ。
-Xクライアント:アプリケーションはXサーバーで実行されます。 X Windowsシステムでは、クライアントとサーバーを別々に実行する必要があります。 QT、GTK、その他のXクライアントなどのアプリケーションが正常に動作するには、Xサーバーの協力が必要です。

私は以前この問題について混乱していました。最初はWindowsに加えてLinuxシステムをインストールしましたが、Xorgエラーの問題が何度も発生しました。
最近はxclipリモートサーバーから。ソフトウェアを使用するにはDISPLAY環境変数を設定する必要がありますが、私のリモートサーバーではそうではありません。モニター、マウス、キーボードはなく、変数はXサーバーによって管理されます。

答え4

X11 Windowsシステム用のさまざまなサーバープログラム(デバイスを制御するプロセス、つまりkbdとマウスの画面)は、有線形式で一般的なX11の拡張をサポートできます。有線形式:クライアントプロセスとシステムで実行されているサーバープログラムとの間でIP経由で送信できるさまざまな種類のメッセージの説明(X11メッセージがIBMのSNAを介して送信されるのを妨げることはありません)。

X11サーバープログラムの拡張はDisplayPostScriptです。

NeWS(Sun / Sony)でDisplayPostscriptを使用することは、サーバーが完全でかなり優れた(ディスプレイ)Postscriptサポートを内蔵していることを意味します。クライアントプログラムはこのサポートを利用して、サーバー内で直接PostScriptプログラムを実行できます。

たとえば、石油探査プロジェクトでは、デバイスが高度なイメージセッター/プリンターであるかのように、同じAPIを使用して科学者のモニター(CRT)に結果を表示するためにこのアプローチを使用できます。

Adobeはまだシステム(2021年7月)からDisplayPostScriptを削除していません。

関連情報