X11が登場した当時、グラフィックスコンピュータは、別の部屋にあるサーバーに接続された端末に過ぎませんでした。そのアーキテクチャは、つい最近まであらゆるLinuxデスクトップ版にそのまま引き継がれていました。
旧モデルの問題点
X11では、すべての処理が中間サーバーを経由します。アプリケーションが描画を行い、それをサーバーに送信すると、サーバーが合成して画面に表示します。この方法は柔軟性がありますが、2つの大きな問題を引き起こします:
- コピー処理が1段階増えるため、画面のティアリングや遅延が発生する
- 隔離機能なし:どのX11アプリケーションでも、他のウィンドウで入力したキーを読み取ったり、許可を得ずにスクリーンショットを撮影したりできる
Waylandは異なるアプローチをとっている
アプリケーションはバッファに直接描画を行い、それをコンポージットに通知します。コンポージットはウィンドウマネージャーそのものであり、独立した中間層は存在しません。その結果、遅延が少なくなり、各フレームは常に完全な状態になります。
さらに重要なのは、このアプリはデフォルトで隔離されている点です。スクリーンショットや動画の録画を行うには、ユーザーに確認を求めるプロンプトが表示されるゲートを通過する必要があります。
引き締め策の代償
その分離によって、慣れ親しんだ多くのツール――キーボード自動化ソフト、一部の画面共有アプリ、古いスクリーンショットツールなど――が動作しなくなりました。新しいインターフェースに対応させるには、それらを書き直す必要がありました。Xwaylandの互換レイヤーにより、古いアプリケーションは動作し続けますが、それでもX11の制限を引きずっています。
一般的なユーザーにとっては、移行はほぼシームレスに行われます。自動化ツールを多く利用しているユーザーにとっては、アップグレード前に確認が必要な点です。
Thảo luận