web-dev-qa-db-fra.com

Pourquoi Wayland est-il meilleur?

Comme récemment annoncé par Mark Shuttleworth, Ubuntu utilisera Wayland comme gestionnaire d’affichage.

Quelles sont les plus grandes différences entre X11 et Wayland? Pourquoi Wayland va-t-il améliorer Ubuntu?

171
Hillar

Vous pouvez voir la page d'architecture Wayland pour voir en quoi cela diffère par sa conception. Il est supposé simplifier toute la pile graphique en forçant tout dans une pile GEM/DRM standard directement dans le noyau et en gérant la composition elle-même.

Comparez cela à la pile X où vous avez des bits et des bobs partout. Une partie du désordre X a été faite grâce à une conception flexible, certaines ont été de plus en plus douloureuses. Tous les compositeurs (Compiz/Metacity/Mutter/KWin/etc) ont été ajoutés après coup. Ils sont, à la base, des bidouilleurs pour faire ce que X devrait probablement faire lui-même. Si les choses continuent à se développer comme avant, nous en arriverons à un point où le projet deviendra intolérable.

Globalement, lorsque le support matériel est disponible, il convient de rendre l’ensemble de la pile plus efficace et moins pénible à utiliser dans les configurations standard.

Cependant, il y a quelques problèmes pour lesquels je n'ai pas vu de solution jusqu'à présent:

  • X est assez conscient du réseau. Vous pouvez envoyer des fenêtres à d'autres ordinateurs, vous pouvez avoir plusieurs écrans avec des connexions à distance et toutes sortes de choses géniales comme ça. Cela peut sembler assez spécialisé, mais c'est une technologie largement utilisée. Wayland semble assez local et statique en comparaison.

  • Il y a aussi le support des pilotes. Les pilotes de sources fermées ne prennent pas encore en charge les technologies KMS/shared-GEM/shared-DRM sur lesquelles prospère Wayland. Un puriste peut être d'accord avec Nouveau, mais quelqu'un qui paye entre 100 et 400 euros sur une carte graphique 3D hautes performances ne sera pas satisfait de la médiocre performance 3D obtenue avec le pilote ouvert actuel.

    Mise à jour: Nvidia travaille pour prendre en charge Wayland et Mir .


Mise à jour 2018 . 17.10 utilisait Wayland comme serveur d'affichage par défaut (sauf si vous aviez un pilote fermé, un pilote qui ne le supportait pas ou si vous n'aviez pas besoin de X). 18.04 et 18.10 utilisent tous les deux X comme valeur globale par défaut (bien que vous puissiez installer Wayland).

Je ne suis en charge de rien, mais à partir de cette position, il semble que nous soyons toujours un métrique sur Nvidia, loin d’obtenir une réelle traction . Jusque-là, je ne pense pas que nous allons voir suffisamment d’esprit et de puissance en développement passer derrière Wayland. Le marché des jeux/performances utilise X. Le marché MCE utilise X (et les framebuffers directs). Je ne suis pas sûr que Wayland aura une chance réelle.

131
Oli

Il y a beaucoup de différences entre X et Wayland. Le plus gros du côté graphique est probablement Wayland ne dessine pas.

X a deux API de dessin. L'un d'eux fait partie du protocole de base X11, qui est ancien, inutile et que personne n'utilise. L’autre est l’extension XRender, qui fournit des opérations composites modernes, entre autres des dégradés. C'est ce que le Caire, par exemple, utilise. X a également des API de dessin de polices.

Wayland n'a pas d'API de dessin. Un client Wayland obtient un descripteur de tampon DRM, qui est essentiellement un pointeur sur une mémoire graphique; Wayland ne sait pas ou ne se soucie pas de savoir comment le client puise dans cette mémoire tampon. En termes X, cela signifie que toutes les applications reçoivent rendu direct - les demandes de dessin n’ont pas besoin de passer par le serveur.

Le seul rendu que fait Wayland consiste à copier les tampons du client sur l'écran.

En termes d’avantages, Wayland est beaucoup moins complexe que X, ce qui devrait en faciliter la maintenance - bien que cette simplicité s’explique en partie par la complexité accrue (par exemple: comment en fait = utiliser transparence) aux autres couches de la pile. En rendant les clients responsables de tous leurs rendus, ils peuvent être plus intelligents dans des domaines tels que la double mise en tampon.

Il y a d'autres avantages en dehors des graphiques. C'est beaucoup plus facile pour les applications en bac à sable, par exemple.

53
RAOF

La principale différence à mes yeux est que Wayland est plus proche du noyau que X-Server. Avec le déplacement des pilotes graphiques de X vers le noyau (KMS, réglage du mode noyau), Wayland prévoit d’utiliser cette nouvelle fonctionnalité pour remplacer X. Vous pourriez vous attendre à voir ce qui suit ...

Une empreinte moins importante que X - car l'affichage est géré par le noyau, Wayland n'aura pas à en implémenter autant pour devenir utilisable. Cela va dans les deux sens car je suppose que le transfert de X (regardez un écran sur un autre PC) peut disparaître avec X.

Fonctionnalités de KMS: pouvoir modifier la résolution de l'écran sans redémarrer le serveur X (bien que je pense que cela a été corrigé dans X il y a quelque temps, du moins pour nvidia), console de débogage sur la panique du noyau pour les chipsets intel (passer à nouveau) si vous êtes intéressé ce genre de chose.

Quelqu'un peut-il me corriger si je me trompe?

18
TGM

Tous les autres articles mettent en évidence les avantages de Wayland, mais ce n’est pas seulement une bonne chose. Le principal avantage de X par rapport à Wayland est que X fonctionne sur le réseau. X est transparent au réseau, vous pouvez afficher la fenêtre, ou avec XDMCP une session complète, sur un terminal pendant que le programme réel est exécuté sur une autre machine, généralement plus puissante. Avec quelque chose comme Wayland, l’idée de la transparence du réseau a disparu. Peut-être que ce n’est pas tellement nécessaire de nos jours avec les réseaux rapides et d’autres protocoles tels que VNC et RDP, je pensais juste que je le mentionnerais pour être complet.

13
Christian Hujer

En termes simples, l’espoir est d’améliorer les graphiques (moins de bugs, plus rapide, plus facile à utiliser). Même les choses pourraient être possibles un jour qui n'étaient pas avant. Personnellement, je pense que cela va au moins pimenter les choses, comme le fait toujours la concurrence.

7
ido

Deux petites choses que tout le monde remarquera assez rapidement dans le travail quotidien:

  • Wayland supprime les morceaux de papier jugés trop difficiles à résoudre dans X11. Un exemple célèbre: utiliser les touches de fonction (volume du haut-parleur, luminosité de l'écran, etc.) lorsqu'un menu est ouvert ou que l'écran de verrouillage est activé.
  • Wayland est meilleur pour les périphériques d'entrée. D'une part, il existe de nombreuses autres options pour configurer les pavés tactiles, y compris un paramètre de prise par clic persistant.
3
Nico Schlömer