Wayland

Un article de Wikipédia, l'encyclopédie libre.
Wayland
Description de l'image Wayland Logo.svg.

Informations
Créateur Kristian Høgsberg
Développé par Kristian Høgsberg et Freedesktop.orgVoir et modifier les données sur Wikidata
Première version Voir et modifier les données sur Wikidata
Dernière version 1.22.0 ()[1]Voir et modifier les données sur Wikidata
Dépôt gitlab.freedesktop.org/wayland/waylandVoir et modifier les données sur Wikidata
État du projet Actif
Écrit en CVoir et modifier les données sur Wikidata
Type Système de fenêtrageVoir et modifier les données sur Wikidata
Politique de distribution Gratuit
Licence Licence MITVoir et modifier les données sur Wikidata
Documentation wayland.freedesktop.org/docs/htmlVoir et modifier les données sur Wikidata
Site web wayland.freedesktop.orgVoir et modifier les données sur Wikidata

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

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[2],[3].

Historique[modifier | modifier le code]

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)[4]. Wayland, en tant qu’implantation du protocole de même nom, est un logiciel libre publié sous licence MIT[5].

Architecture[modifier | modifier le code]

Wayland: entre libwayland et le compositeur wayland
La pile graphique de Linux
Les clients Wayland utilisent EGL pour dessiner directement dans le framebuffer ; le compositeur Wayland prend en charge la composition.
The place of certain Linux kernel modules
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[6],[7].

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[8].

Utilisation[modifier | modifier le code]

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[9].

Le premier déploiement de Wayland devait se produire au sein du projet MeeGo développé par Intel et Nokia[10] 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[11],[12],[13], à l'inverse de la distribution GNU/Linux Ubuntu qui avait changé d'avis en [14],[15] 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 blog[16] 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[modifier | modifier le code]

Capture d'écran de Weston

Weston est l'implémentation de référence de Wayland. Il fonctionne sur GNU/Linux 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.

Weston supporte le procédé High-Bandwidth Digital Content Protection (Protection des contenus numériques haute définition)[17].

Galerie[modifier | modifier le code]

Références[modifier | modifier le code]

  1. « ANNOUNCE wayland 1.22.0 », (consulté le )
  2. (en)KWin/Wayland
  3. (en)Mutter and Wayland
  4. (en) « Development Team of Intel's Open Source Technology Center », Intel OSTC
  5. (en) « Wayland (Google Groups) - Frequently Asked Questions »(Archive.orgWikiwixArchive.isGoogleQue faire ?)
  6. (en) wayland google groups
  7. (en) Red Hat developer creates new X server, Wayland
  8. « Wayland », sur wayland.freedesktop.org (consulté le )
  9. (en) « X Clients under Wayland (XWayland) », sur wayland.freedesktop.org (consulté le )
  10. (en) Michael Larabel, « Where Wayland May First Appear In Use By A Distro »,
  11. « Ubuntu : après le shell GNOME, Canonical se débarrasse de X », PC INpact
  12. (en) Fedora To Eventually Move to Wayland, Too
  13. (en) « Mandriva: X.org, wayland and all that awesome low-level stuff »
  14. (en) djwm, « Canonical reveals plans to launch Mir display server - Update », (consulté le )
  15. (en) Jon Brodkin, « Ubuntu dumps X window system, creates replacement for PC and mobile », (consulté le )
  16. Canonical, « Growing Ubuntu for cloud and IoT, rather than phone and convergence », sur Ubuntu Insights (consulté le )
  17. « Adding Content protection support in drm-backend (!48) · requêtes de fusion · wayland / weston · GitLab » [archive], sur GitLab, (consulté le )

Annexes[modifier | modifier le code]

Articles connexes[modifier | modifier le code]

Liens externes[modifier | modifier le code]