X11 a vu le jour à une époque où les ordinateurs graphiques n'étaient encore que des terminaux connectés à un serveur situé dans une autre pièce. Cette architecture est restée inchangée dans toutes les versions de Linux pour ordinateurs de bureau jusqu'à récemment.
Le problème de l'ancien modèle
Dans X11, tout passe par un serveur intermédiaire. L'application dessine, envoie les données au serveur, qui les assemble et les affiche à l'écran. Cette méthode est flexible, mais elle pose deux problèmes majeurs :
- Effets de déchirement d'image et latence dus à une étape de copie supplémentaire
- Pas d'isolation : n'importe quelle application X11 peut lire les touches que vous tapez dans une autre fenêtre et capturer l'écran sans demander d'autorisation
Wayland fonctionne différemment
L'application dessine directement dans sa propre mémoire tampon, puis en informe le compositeur. Le compositeur fait également office de gestionnaire de fenêtres ; il n'y a plus de couche intermédiaire distincte. Il en résulte moins de latence et chaque image est toujours complète.
Plus important encore, l'application est isolée par défaut : pour faire une capture d'écran ou enregistrer une vidéo, il faut passer par une fenêtre contextuelle demandant l'autorisation de l'utilisateur.
Le prix du resserrement
C'est précisément cette isolation qui a rendu inutilisables de nombreux outils familiers : les logiciels d'automatisation du clavier, certaines applications de partage d'écran, ainsi que d'anciens outils de capture d'écran. Il a fallu les réécrire pour qu'ils puissent utiliser la nouvelle interface. La couche de compatibilité Xwayland permet aux anciennes applications de continuer à fonctionner, mais celles-ci restent soumises aux limitations de X11.
Pour l'utilisateur lambda, la transition est pratiquement transparente. Pour les utilisateurs qui recourent à de nombreux outils d'automatisation, c'est un point à vérifier avant la mise à jour.
Thảo luận