WaylandとXとの違い
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/02/22 13:51 UTC 版)
「Wayland」の記事における「WaylandとXとの違い」の解説
WaylandとXとの間には、パフォーマンス、コードの保守性、セキュリティに関して、いくつかの違いがある。 アーキテクチャ コンポジット型ウィンドウマネージャは、Xとは分離しており、追加機能である。一方、Waylandはディスプレイサーバとコンポジタを単一の機能として統合している。また、Waylandは、ウィンドウマネージャの仕事のいくつかを組み込んでいる。一方、Xは、クライアント側の仕事として分離されている。 コンポジット Xでは、コンポジットはオプションであるが、Waylandでは必須である。Xでのコンポジットは"能動的"、つまり、コンポジタはすべてのピクセルデータを自分で取り出さなければならない。これは遅延を生む。Waylandでは、コンポジットは"受動的"である。つまり、コンポジタはピクセルデータをクライアントから直接受け取る。 レンダリング Xサーバは自身でレンダリングができ、さらにクライアントによって送られたレンダリングされたウィンドウを表示するために構築することもできる。対して、WaylandはレンダリングのためのAPIは表に出しておらず、そうした仕事を(フォント、ウィジェット、等のレンダリングを含めて)クライアントに委譲している。ウィンドウの装飾は、(たとえば、グラフィカルツールキットを使って)クライアント側でレンダリングできるし、(コンポジタによって)サーバサイドでもできる。 セキュリティ Waylandは、各ウィンドウの入出力から独立しており、入力・出力それぞれの機密性、整合性、および可用性を実現する。オリジナルのXの設計では、これらの重要なセキュリティの特徴が欠けており、いくつかの拡張が、それを軽減すべく開発されてきた。また、Waylandは、コードの大部分がクライアント側で実行されており、「root」権限で実行する必要のあるコードが少なくなり、セキュリティが向上する。一方、複数の一般的なLinuxディストリビューションでは、現在はXをroot権限なしに実行できる。 プロセス間通信 Xサーバは、Xクライアント同士の基本的な通信方法を提供する。後にICCCMによって拡張された。このXクライアント-クライアント通信は、ウィンドウマネージャによって使われる。また、Xセッション(英語版)、ウィンドウの選択とドラッグアンドドロップ(英語版)、その他の機能を実現する。Waylandコアプロトコルは、Waylandクライアント間の通信をサポートしない。対応する機能は(もし必要であれば)(KDEやGNOMEといった)デスクトップ環境や(たとえばOSのプロセス間通信といった)サードパーティによって実現される。 ネットワーク Xウィンドウシステムは、ネットワーク越しにコア部分が実行されるよう設計されたアーキテクチャである。Waylandは、それ自身ではネットワーク透過性を持たない。しかし、コンポジタは、リモートディスプレイを実現するためにどんなリモートデスクトッププロトコルも実現できる。加えて、Waylandイメージストリーミングとイメージ圧縮の研究がある。この研究は、Virtual Network ComputingVNCのようにリモートフレームバッファアクセスを実現し得る。
※この「WaylandとXとの違い」の解説は、「Wayland」の解説の一部です。
「WaylandとXとの違い」を含む「Wayland」の記事については、「Wayland」の概要を参照ください。
- WaylandとXとの違いのページへのリンク