*** Welcome to piglix ***

Wayland compositor

Wayland
Wayland Logo.svg
Wayland demo 2.png
Screenshot of a Wayland demonstration
Original author(s) Kristian Høgsberg
Developer(s) freedesktop.org et al.
Initial release 0.85 / 9 February 2012; 4 years ago (2012-02-09)
Stable release
1.12 / 21 September 2016; 4 months ago (2016-09-21)
Repository cgit.freedesktop.org/wayland/wayland/
Development status Active
Written in C
Operating system Linux, FreeBSD, DragonflyBSD
Size c. 100 KB
Type
License MIT License
Website wayland.freedesktop.org

Wayland is a computer that specifies the communication between a display server (called a Wayland compositor) and its clients, as well as a reference implementation of the protocol in the C programming language.

Wayland is developed by a group of volunteers initially led by Kristian Høgsberg as a free and open community-driven project with the aim of replacing the X Window System with a modern, simpler windowing system in Linux and other Unix-like operating systems. The project's source code is published under the terms of the MIT License, a permissive free software licence.

As part of its efforts, the Wayland project also develops a reference implementation of a Wayland compositor called Weston.

In recent years, Linux desktop graphics has moved from having "a pile of rendering interfaces... all talking to the X server, which is at the center of the universe" towards putting the Linux kernel and its components (i.e. DRI, DRM) "in the middle", with "window systems like X and Wayland ... off in the corner". This will be "a much-simplified graphics system offering more flexibility and better performance".

Kristian Høgsberg could have added an as many recent projects have done, but preferred to "[push] X out of the hotpath between clients and the hardware" for reasons explained in the project's FAQ:

What’s different now is that a lot of infrastructure has moved from the X server into the kernel (memory management, command scheduling, mode setting) or libraries (cairo, pixman, freetype, fontconfig, pango, etc.), and there is very little left that has to happen in a central server process. ... [An X server has] a tremendous amount of functionality that you must support to claim to speak the X protocol, yet nobody will ever use this. ... This includes code tables, glyph rasterization and caching, XLFDs (seriously, XLFDs!), and the entire core rendering API that lets you draw stippled lines, polygons, wide arcs and many more state-of-the-1980s style graphics primitives. For many things we've been able to keep the X.org server modern by adding extension such as XRandR, XRender and COMPOSITE ... With Wayland we can move the X server and all its legacy technology to an optional code path. Getting to a point where the X server is a compatibility option instead of the core rendering system will take a while, but we'll never get there if [we] don’t plan for it.


...
Wikipedia

...