Linux デスクトップでは、X11 と Wayland という二つの名前をよく目にする。
どちらもグラフィック表示に関係しているが、設計された時代、アーキテクチャの考え方、使い勝手はかなり違う。
簡単に言えば、X11 は旧世代のディスプレイプロトコルとエコシステムである。 機能は成熟しており互換性も高いが、アーキテクチャは複雑で、セキュリティモデルは古い。 Wayland は新世代のディスプレイプロトコルで、中間層を減らし、セキュリティと滑らかさを高めることを目指している。 ただし、一部のソフトウェアやワークフローはまだ適応が必要だ。
日常利用だけを考えるなら、結論は次の通り。
- 新しく Linux デスクトップを入れるなら、まず Wayland を試す。
- 古いソフトウェア、複雑なリモートデスクトップ、特殊な入力デバイス、一部の専門ツールが必要なら、X11 のほうがまだ安定しやすい。
- ゲームや通常のオフィス用途では、Wayland はかなり実用的になっている。
- 互換性の問題が出たら X11 に戻せばよい。これは信条の問題ではない。
X11 とは
X11 は X Window System や Xorg とも呼ばれ、Linux や Unix デスクトップで長年使われてきたグラフィックシステムである。 その設計思想は、プログラムをあるマシンで実行し、ウィンドウを別のマシンに表示するという、初期のネットワークコンピューティング環境に由来する。
X11 の典型的な構造は次のようになる。
- アプリケーションがウィンドウ内容を描画する。
- X Server が表示、入力、基本的なウィンドウ操作を管理する。
- ウィンドウマネージャーが枠、移動、重なり順を担当する。
- コンポジターが影、透明効果、アニメーション、ティアリング制御などを担当する。
この構造は柔軟で、X11 は大量のツールと拡張を蓄積してきた。 しかし時間が経つにつれて、問題も明確になった。 コンポーネントが多く、経路が長く、権限境界が緩く、現代的なデスクトップ要求の多くを拡張やパッチで支えている。
Wayland とは
Wayland は、従来型の完全なディスプレイサーバーというより、より現代的なディスプレイプロトコルである。 Wayland では、コンポジターが同時にディスプレイサーバーの役割を担うことが多い。 GNOME の Mutter、KDE の KWin、wlroots 系のコンポジターはいずれも Wayland compositor として動作できる。
Wayland の典型的な構造はより短い。
- アプリケーションが自分でウィンドウ内容をレンダリングする。
- コンポジターがアプリケーションから送られた buffer を受け取る。
- コンポジターがウィンドウ、入力、ディスプレイ出力、合成を一元管理する。
- 最終的な画面はカーネルのグラフィックスタックへ直接渡されて表示される。
この設計により、従来の X11 にあった X Server、ウィンドウマネージャー、コンポジター間の遠回りが減る。 また、権限制御も明確になる。 アプリケーションはデフォルトで他のウィンドウ内容を自由に読めず、グローバルなキーボード入力も勝手に監視できない。
アーキテクチャの違い
最も大きな違いは、責務の分け方にある。
X11 では、X Server が中心にあり、多くのアプリケーションがそれとやり取りできる。 ウィンドウマネージャー、コンポジター、入力メソッド、スクリーンショットツール、リモート制御ツールも、X11 のオープンなインターフェースを通じて多くの情報を取得できる。 これは高い互換性をもたらす一方で、セキュリティ上の問題も生む。
Wayland では、コンポジターが中心である。 アプリケーションは他のウィンドウ内容を直接取得できず、すべてのキーボード入力をデフォルトで監視することもできない。 スクリーンショット、録画、画面共有、グローバルショートカット、リモート制御などは、デスクトップポータル、PipeWire、またはコンポジターが提供する制御されたインターフェースを通す必要がある。
整理すると次のようになる。
| 比較項目 | X11 | Wayland |
|---|---|---|
| 設計時代 | 古い | 新しい |
| 中心コンポーネント | X Server | Compositor |
| コンポジターの役割 | 任意または追加コンポーネント | 中核コンポーネント |
| アプリ間の隔離 | 弱い | 強い |
| リモート表示 | 元から強い考え方 | 新しいツールチェーンに依存 |
| 互換性 | 非常に強い | まだ補完中 |
| 現代的なデスクトップ体験 | 拡張とパッチに依存 | 設計上、現代的な要求に近い |
X11 の長所
X11 最大の長所は成熟度である。 長年動いてきたため、ほぼすべての Linux グラフィカルアプリケーションが X11 で動作する。 古いツール、専門ソフトウェア、特殊な入力メソッド、リモート制御、 automation スクリプトも、X11 を優先してサポートしていることが多い。
もう一つの長所は操作しやすさである。 多くのツールはウィンドウの読み取り、入力のシミュレーション、画面キャプチャ、ウィンドウ移動、キー入力監視を直接行える。 これは automation、リモート支援、ウィンドウ管理スクリプト、特殊なワークフローに便利だ。
次のような用途があるなら、X11 は今でも現実的な選択肢である。
- 古い GUI ソフトウェアを使う。
xrandr、xinput、xdotool、wmctrlに依存している。- 従来型のリモートデスクトップやウィンドウ転送を使う。
- 特殊なスクリーンショット、録画、キーボード/マウスマクロツールが必要。
- あるアプリが Wayland ではまだ不安定。
X11 の短所
X11 の短所は主に歴史的な負担から来ている。
まず、セキュリティモデルが古い。 従来の X11 セッションでは、通常のアプリケーションが他のウィンドウ入力を監視したり、画面内容を取得したり、キーボードやマウス操作をシミュレートしたりできることが多い。 現代的なデスクトップセキュリティの観点では、これは受け入れにくい。
次に、レンダリング経路が複雑である。 X11 は Composite、GLX、DRI、RandR、Present など、多くの拡張を経てきた。 これらの拡張により現代的なデスクトップを支え続けられたが、グラフィックスタックも複雑になった。 高リフレッシュレート、マルチモニター、異なるスケーリング、混在 DPI、低遅延入力などでは、X11 は細かな問題が出やすい。
さらに、X11 の保守の重点は徐々に互換性へ移っている。 主要なデスクトップ環境は今でも X11 をサポートしているが、新機能や新しい最適化は Wayland に先に入ることが多い。
Wayland の長所
Wayland の利点は、主に現代的なデスクトップ体験にある。
レンダリング経路がより直接的である。 アプリケーションが buffer をレンダリングし、コンポジターが一元的に合成して表示するため、従来の X11 アーキテクチャにあった遠回りが減る。 アニメーション、ウィンドウ移動、高リフレッシュレート、マルチモニター、タッチパッドジェスチャー、分数スケーリングなどでは、Wayland のほうがきれいに実装しやすい。
セキュリティも Wayland の重要な長所である。 アプリケーションはデフォルトで他のウィンドウを自由にキャプチャできず、グローバルなキーボード入力も無条件には監視できない。 スクリーンショット、録画、画面共有にはユーザー許可が必要で、通常はデスクトップポータルと PipeWire を通じて処理される。
Wayland は現代的なハードウェアにも向いている。 タッチパッドジェスチャー、HiDPI、可変リフレッシュレート、モニターごとの異なるスケーリングなどは、Wayland のほうが自然に扱いやすい。 GNOME と KDE も近年、多くのデスクトップ体験改善を Wayland セッションへ投入している。
Wayland の短所
Wayland の問題は「使えない」ことではなく、エコシステムがまだ移行中であることだ。
一部のツールは、グローバルキー監視、ウィンドウ列挙、自動クリック、画面取得、ウィンドウ移動など、X11 のオープンな機能に依存していた。 Wayland ではこれらをそのまま持ち込めず、ポータル、コンポジタープロトコル、またはデスクトップ環境 API を通す必要がある。 そのため、一部の古いツールは動かなくなったり、特定のデスクトップ環境でしか動作しなかったりする。
リモートデスクトップも典型的な問題である。 X11 にはネットワーク透過性という歴史的な設計があり、現代の使用体験が常に良いとは限らないが、多くのツールが成熟している。 Wayland でリモートデスクトップを使うには、PipeWire、RDP、VNC、デスクトップポータル、またはコンポジターのサポートが必要で、体験は GNOME、KDE、Sway などの実装に依存する。
入力メソッドもかつては痛点だった。 現在は Fcitx5 や IBus が主要な Wayland デスクトップでかなり改善されているが、一部の Electron アプリ、古いプログラム、特殊な組み合わせでは、候補ウィンドウの位置、フォーカス、ショートカットに問題が出ることがある。
NVIDIA も長く Wayland の障害の一つだった。 近年は NVIDIA ドライバとデスクトップ環境のサポートが大きく改善したが、古い GPU、古いドライバ、特殊なマルチモニター構成では、まだ X11 のほうが安定する場合がある。
Xwayland の役割
Wayland に切り替えると X11 アプリがまったく使えなくなる、と思っている人も多い。 実際にはそうではない。
Wayland デスクトップは通常、Xwayland を使って古い X11 アプリケーションを互換実行する。
アプリケーションは自分が X11 上で動いていると思い、実際のウィンドウ内容は Wayland コンポジターへ渡されて表示される。
これにより移行はかなり滑らかになる。
- ネイティブ Wayland アプリは Wayland を使う。
- 古い X11 アプリは Xwayland を使う。
- ユーザーは一つのデスクトップセッションで両方の種類のプログラムを同時に使える。
ただし、Xwayland は万能ではない。 グローバル入力監視、ウィンドウ管理スクリプト、低レベルの X11 拡張に依存するツールは、やはり制限を受けることがある。
性能はどちらが良いか
Wayland が必ず X11 より速い、または X11 が必ず安定している、と単純には言えない。 実際の挙動は、デスクトップ環境、グラフィックドライバ、アプリの種類、使用場面に依存する。
一般的には次のように考えられる。
- 通常のデスクトップアニメーションや高リフレッシュレート表示では、Wayland のほうが滑らかに感じやすい。
- 混在 DPI やマルチモニターのスケーリングでは、Wayland に利点がある。
- 古いアプリや特殊なツールでは、X11 のほうが問題が少ない。
- ゲームでは、Xwayland とネイティブ対応により Wayland はかなり成熟しているが、一部のゲームやキャプチャツールはまだ X11 を好む場合がある。
- 専門的なグラフィック、リモート制御、automation スクリプトは、具体的なツールごとに確認する必要がある。
多くの一般ユーザーにとって、性能は最大の違いではない。 実際の体験を左右するのは、互換性、セキュリティ境界、モニター構成、入力デバイス対応である。
スクリーンショット、録画、画面共有
これは Wayland で最も誤解されやすい部分である。
X11 では、スクリーンショットや録画ツールが通常そのまま画面を取得できる。 これは便利だが、悪意あるプログラムが画面を盗み見しやすいという意味でもある。
Wayland では、アプリケーションが自由に画面を取得することはできない。 スクリーンショット、録画、配信、会議での画面共有は、通常デスクトップポータルと PipeWire を通り、ユーザーの許可を必要とする。 これはより安全だが、アプリケーション側が新しいインターフェースをサポートしている必要がある。
そのため、ある会議ソフト、録画ツール、スクリーンショットツールが Wayland でうまく動かない場合、それは Wayland が「対応していない」という意味とは限らない。 むしろ、そのアプリがポータルや PipeWire に十分適応していない可能性が高い。
ゲームではどちらを選ぶべきか
現在の Linux ゲームは、もはや X11 専用ではない。 Steam、Proton、Mesa、KDE、GNOME、Gamescope、Xwayland により、Wayland でのゲーム体験は大きく改善している。
AMD または Intel GPU を使っているなら、Wayland は日常のゲーム環境として十分使えることが多い。 NVIDIA の場合も新しいドライバではかなり実用的になっているが、ドライバとデスクトップ環境は新しめに保つのがよい。
ゲーム用途では次のように選べる。
- 通常の Steam / Proton ゲーム:まず Wayland を試す。
- 録画、配信、オーバーレイ、入力遅延に問題が出た場合:X11 と比較する。
- Gamescope を使う場合:Wayland エコシステムのほうが合う。
- 古い GPU や古いドライバを使う場合:X11 のほうが楽なことがある。
リモートデスクトップと automation
ワークフローがリモートデスクトップ、ウィンドウ automation、グローバルなキーボード/マウス制御に依存している場合は、より慎重に考える必要がある。
X11 はこうした場面でツールが多く、挙動も直接的である。 たとえば、スクリプトでウィンドウを制御する、クリックをシミュレートする、特定ウィンドウを取得する、といった操作は X11 のほうが簡単なことが多い。
Wayland は安全設計上、通常のアプリケーションが他のウィンドウを自由に制御することを許さない。 そのため、automation ツールはデスクトップ環境が提供するインターフェースを使うか、専用のリモートデスクトップ実装を使う必要がある。 GNOME と KDE はこうした機能を補っているが、デスクトップ間の一貫性はまだ X11 ほどではない。
普通のデスクトップユーザーなら Wayland で問題ない。 リモート制御、automation テスト、ウィンドウ管理スクリプトを重用しているなら、X11 のほうが合う可能性がある。
自分がどちらを使っているか確認する
現在のセッション種別は、環境変数で確認できる。
|
|
出力が次なら:
|
|
現在は Wayland セッションである。
出力が次なら:
|
|
現在は X11 セッションである。
GNOME や KDE などのデスクトップでは、ログイン画面の歯車メニューやセッション選択から X11 / Wayland を切り替えられることが多い。
選び方
次のように判断できる。
| 場面 | 推奨 |
|---|---|
| 新しいPC、主要ディストリビューション、通常のオフィス用途 | Wayland 優先 |
| 最新の GNOME / KDE | Wayland 優先 |
| マルチモニター、HiDPI、高リフレッシュレート | Wayland 優先 |
| 古いソフトウェア、古い GPU、古いドライバ | X11 優先 |
| リモートデスクトップ、ウィンドウスクリプト、automation テスト | X11 優先、または Wayland を個別検証 |
| ゲーム | まず Wayland、問題があれば X11 |
| 会議の画面共有、録画 | ソフトウェアの PipeWire / ポータル対応次第 |
| セキュリティ重視、マルチユーザーデスクトップ | Wayland 優先 |
Wayland は今後の方向性だが、X11 がすぐ消えるわけではない。 両者はしばらく共存し続ける。
まとめ
X11 の強みは成熟、互換性、豊富なツールである。 古いソフトウェア、リモートデスクトップ、ウィンドウ automation、一部の特殊なワークフローに向いている。 弱点はセキュリティ境界が弱く、アーキテクチャが複雑で、現代的なマルチモニター、高リフレッシュレート、混在スケーリングに対してすっきりしない点だ。
Wayland の強みは、より現代的なアーキテクチャ、より良いセキュリティ、より直接的な表示経路である。 HiDPI、タッチパッドジェスチャー、マルチモニター、現代的なデスクトップ体験にも向いている。 弱点は、一部の古いツール、リモート制御、スクリーンショット/録画、入力メソッドでまだ適応コストがあることだ。
一般ユーザーは Wayland をデフォルトの選択肢として考えてよい。 特定のアプリや周辺機器が正常に動かない場合だけ、X11 に戻して確認すればよい。 Linux デスクトップにとって、これはどちらかを信じる話ではなく、ハードウェア、ソフトウェア、ワークフローに合うほうを選ぶ話である。
参考ソース: