Wayland

Wayland est un protocole de serveur d'affichage, ainsi qu'une bibliothèque logicielle libre disponible sur les systèmes d'exploitation GNU/Linux.

Pour les articles homonymes, voir Wayland (homonymie).

Logo du protocole Wayland

Wayland fournit un moyen pour les gestionnaires de fenêtres composite de communiquer directement avec les applications graphiques ainsi que le matériel vidéo.

Les applications effectuent leur rendu graphique dans une mémoire tampon qui leur est dédiée, et le gestionnaire de fenêtres composite devenu serveur d'affichage se charge de les assembler pour construire l'image à afficher à l'écran. Cela conduit à une architecture plus simple et efficace que d'utiliser un gestionnaire de fenêtre composite fonctionnant de concert avec le système X Window.

Des gestionnaires de fenêtres composite actuels, comme KWin, Mutter et Weston qui en est l'implémentation de référence, ont commencé à mettre en œuvre le protocole Wayland[1],[2].

Wayland utilise EGL
Le gestionnaire de fenêtres et le serveur d'affichage (display server) sont unifiés. Le client gère la décoration des fenêtres

Historique

La mise en œuvre du protocole Wayland a commencé en 2008, due à Kristian Høgsberg alors employé de la société Red Hat, et l'un des membres de l'Intel OSTC (Open Source Technology Center)[3]. Wayland, en tant qu’implantation du protocole de même nom, est un logiciel libre publié sous licence MIT[4].

Architecture

Wayland: entre libwayland et le compositeur wayland
Les clients Wayland utilisent EGL pour dessiner directement dans le framebuffer ; le compositeur Wayland prend en charge la composition.
Le serveur d'affichage (Wayland compositor) se trouve entre le noyau Linux et les clients. Il communique avec eux par son propre protocole.

La démo de Wayland utilise les technologies récentes du noyau Linux comme le DRI, KMS et GEM, dans le but de fournir un serveur d'affichage minimal, léger et performant[5],[6].

Wayland a été conçu pour utiliser la spécification EGL du Khronos Group lors des opérations de rendu. Cette astuce de conception permet de bénéficier des performances du processeur graphique sans nécessiter de pilote graphique dépendant de X11[7].

Utilisation

Wayland est considéré comme le remplaçant du serveur X.Org. Pour faciliter la transition, les développeurs ont créé XWayland, une série de patchs à X.org lui permettant de fonctionner en surcouche de Wayland, et ainsi d’exécuter les applications X11 non portées ou en cours de portage[8].

Le premier déploiement de Wayland devait se produire au sein du projet MeeGo développé par Intel et Nokia[9] mais celui-ci a tourné court, non sans avoir enfanté des projets comme Tizen ou Sailfish OS qui s'appuient effectivement aujourd'hui sur Wayland. La majorité des distributions GNU (comme les distributions GNU/Linux Fedora et Mandriva) ont prévu de l'intégrer en vue de remplacer X.Org[10],[11],[12], à l'inverse de la distribution GNU/Linux Ubuntu qui avait changé d'avis en [13],[14] et préférait se concentrer sur sa propre solution : Mir. Néanmoins, en , la simili-distribution Neon (KDE), à base Ubuntu, s'articulait sur lui. Le , Mark Shuttleworth annonçait dans une publication sur le blogue[15] de canonical qu'Ubuntu allait abandonner l'interface Unity 8 au profit de GNOME dès Ubuntu 17.10 LTS, fermant la porte à Mir. Debian 9 Stretch, sortie le , intègre Wayland avec GNOME (mais ne l'active pas par défaut).

Weston

Weston fonctionnant avec PostmarketOS sur un téléphone mobile

Weston est l'implémentation de référence de Wayland. Il fonctionne sur GNU/Linux (x86 et ARM (les 2 en 32 et 64 bits)) et permet d'afficher le bureau et d'utiliser l'extension d'émulation X11 de Wayland, permettant ainsi de faire fonctionner n'importe quelle application X11.

Notes

Annexes

Articles connexes

Liens externes

  • Portail de l’informatique
  • Portail des logiciels libres
  • Portail GNU/Linux
Cet article est issu de Wikipedia. Le texte est sous licence Creative Commons - Attribution - Partage dans les Mêmes. Des conditions supplémentaires peuvent s'appliquer aux fichiers multimédias.