2011-05-02
■Waylandとは

ディスプレイサーバとクライアントの通信の手順とサーバ・クライアントの
インターフェース(API)を定めた規約(プロトコル)の名称(コードネーム?)。
その規約に基づいたディスプレイサーバとクライアント用ライブラリの
リファレンス実装もWaylandのパッケージに含まれている。
そのため、Wayland=ディスプレイサーバと誤解されることが多い。
リファレンス実装はLinuxカーネル固有の仕組み(KMS、evdev)を
利用しているため、Linux専用。
Waylandにおいては画面の合成を行うコンポジタが主役、コンポジタ
自体がカーネルとのアクセスを担当し、カーネルを介してハードウェアの
入出力を処理する。
Waylandディスプレイサーバ≒コンポジタ+カーネルアクセス
Xサーバとの違い
XサーバがWindow Manager・Xクライアントとで三位一体、
ウィンドウの管理をクライアントから切り離しWindow Manager
が行うのに対し、Waylandはウィンドウの管理は全てクライアント
透過性を有するが、Waylandはネットワーク透過性を有さない、
ぶんXサーバに較べて画面描画が高速となる。
WaylandとXサーバの関係
WaylandサーバはXサーバ互換ではない。既存のXクライアントを
Waylandサーバ上で動作させるためにはWaylandクライアントAPI
を用いて実装されたXサーバが必要となる。
Waylandのリファレンス実装
現状、リファレンス実装はサーバとしての動作以外にXクライアント
としての作動もサポートされている、これは実装が安定するまでの
一時措置と思われる。
また、Khronos Groupの定めたモバイル向けウィンドウシステム
仕様OpenWFのうちディスプレイとのアクセスAPIを定めた「OpenWF
Display」をサポートしている。
2011-04-30
■UbuntuでCanonicalがUnityを選んだ理由

Unityへの移行はWaylandへの布石。
バックエンドの移行は並大抵のことではない。
設計されていて、Xサーバー前提の箇所も多い。)
Waylandは現状Linuxのみをターゲットとしているため、
Waylandのパッケージに含まれるCompositorは
つまり、当分の間WaylandはLinux限定。
Waylandに対してLinuxを含むUnix全般をターゲットに
している統合デスクトップ環境(KDE、Gnome等)の開発者が
最優先で対応するとは考えにくい。Wayland対応より他の改良
や新機能追加が優先される可能性が高い。
早期にWaylandに移行したいUbuntu開発元Canonical社は
外部の統合デスクトップ環境開発プロジェクトの中で
コンセンサスを取りながらWayland対応を進める道では
なく、自社製OSSプロダクトであるUnityで一気呵成に
Wayland対応を進める道を選んだ。
UnityはLinuxのみをターゲットにしており、そのソースコード
は統合デスクトップ環境と較べて遥かにコンパクト。
革新を推し進めたい場合には他者とコンセンサスを取りながら
の共同作業よりビジョンを共有した少人数での集中作業が
最適であることが多いので、Canonicalのこの決定は
正しい。
Wayland自体の開発がまだAlphaステージにあることを
付記しておく。Wayland対応はまだこれから。
■Waylandに向けてのGUIツールキットの対応

Linuxデスクトップ環境におけるディスプレイサーバのX11からWaylandへの移行を睨み、主要GUIツールキットは対応を進めてきている。
することによりバックエンドを抽象化し切替可能にする
研究プロジェクトLighthouseの成果を本流にマージし、Qt4.8と
してのリリースに向け開発中。
Nokia Qtラボ主体のWayland用プラグイン、コミュニティベース?の
Android用プラグインがQtバックエンドプラグインとして開発中。
GTK+は3.0からGDKの実装をX11ラッピングからCairo(2Dグラフィックスライブラリ)依存に変更することでバックエンドの動的切替を可能にしている。