Wayland (display server protocol)

from Wikipedia, the free encyclopedia
Wayland

Wayland Logo.svg
Wayland demo 2.png
Wayland demonstration
Basic data

developer Kristian Høgsberg
Publishing year 2008
Current  version 1.18.0
( February 12, 2020 )
operating system Linux , FreeBSD , DragonFly BSD
programming language C.
category Display server protocol , window system
License MIT license
German speaking No
wayland.freedesktop.org

Wayland is a display server protocol for Linux , FreeBSD and DragonFly BSD . Its main job is to render windows on a bitmap . It describes the communication between a display server and its clients (usually the user's applications). The server is called the Wayland compositor because it also takes on the function of a composition window manager . Wayland's goal is to provide the programmer with a display server protocol that is easier to maintain than the previous X Window server . Applications that are still dependent on the X server can also be used under a Wayland compositor with the help of XWayland .

development

The software development project for Wayland was started by Kristian Høgsberg, a member of Intel's Open Source Technology Center (OSTC). Wayland sees itself (at least on Linux) as an alternative to the X Window System, although the latter can still run on all Unix-like operating systems. Kristian Høgsberg's stated goal for the software is:

"[…] Every frame is perfect, and by that I mean that all applications will be able to control the rendering in such a way that we will never see tearing , unstable refresh rates , redraw artifacts or flickering ."

- Wayland: A New X Server for Linux . Phoronix

construction

Under X11 an extra program, the window manager , is responsible for the window decoration ( title bar , frame, etc.) of all windows . The functions of the display server and the window manager in the Wayland Compositor are summarized under Wayland; there is no communication between the two. As before, each client can draw its own window decorations, or they can be drawn centrally by the compositor. Weston requires client-side window decorations, Kwin takes care of server-side.

The Wayland Display Server Protocol

Wayland Display Server Protocol

The Wayland Display Server protocol defines that clients draw directly into the frame buffer via EGL . For Mesa 3D , libwayland-EGL was written for this. This library expands EGL's existing Mesa implementation to make access more efficient.

Wayland uses existing components of the kernel of the respective operating system such as Direct Rendering Manager (DRM), Kernel Mode Setting (KMS) and the Graphics Execution Manager (GEM) under Linux to provide a minimal display server. In June 2010, Weston was from the desktops more traditional OpenGL to OpenGL ES ported. The reason was that the only available free OpenGL implementation Mesa 3D of GLX dependent and thus the X Window System, OpenGL ES implementation of Mesa but not 3D. Wayland manages without OpenGL / OpenGL ES.

Wayland Compositor

Wayland: Libwayland and the Wayland Compositor
Linux Graphics Stack 2013.svg
Wayland clients write directly to the image memory using EGL ; the compositor decides on the output.


Free and open-source software display servers and UI toolkits.svg
The display server (Wayland Compositor) sits between the Linux kernel and its clients and transmits its data via the so-called display server protocol, which is simply another network protocol .


Linux graphics drivers DRI Wayland.svg
Wayland clients write directly to the image memory using EGL ; the compositor decides on the output.

Image synthesis

The Wayland protocol does not contain an API for image synthesis . Each Wayland client is responsible for the image synthesis of its window content and writes the result in its own buffer. It can bring its own engine for image synthesis or use an external library, such as B. Cairo , OpenGL or Vulkan , or the "rendering engine" of Qt or GTK + use.

commitment

Wayland is seen as a replacement for the X.Org server , but offers other potential uses, such as providing X servers and GDM logins.

  • Enlightenment : From version E20, which appeared in December 2015, Wayland is supported by Enlightenment.
  • Gnome : In March 2013, GNOME developers announced plans for a full port within a year. Gnome 3.10, which was released in September 2013, already contained experimental Wayland support. From version 3.20, Wayland support is considered suitable for everyday use.
  • KDE : KWin supportfor OpenGL ES is delivered from version 4.7. Wayland-specific changes have been in development since 2011.
  • Tizen : Tizen supports Wayland in IVI configurations. Wayland support has been announced for License's mobile platform.
  • Sailfish OS : Jolla's first mobile phone with Sailfish OS runs according to the developers with Wayland.

License

The Wayland Display Server protocol was implemented by various components, such as: B. libWayland-server, libWayland-client or libWayland-EGL. All of these components are free software and, together with the Wayland compositor Weston, are subject to the MIT license .

reception

Wayland was originally presented as a new project on the Phoronix Media website when an article entitled “Wayland: A New X.Org Server for Linux” was published in November 2008 . Responding to media attention through his blog, Høgsberg announced that Wayland was not a new X server, but a new display server, noting that it was a young, immature project.

Dispute with Canonical

A short time after development began, Wayland was accepted as an early standard by most of the Linux community. At the beginning of 2013, however, Canonical surprisingly announced that it wanted to develop its own solution called “ Mir ”. This decision sparked controversy, as many would have preferred to see Wayland jointly advanced and thus establish a uniform standard. In a statement by Canonicals employees, it was argued, among other things, that Wayland had inherited serious security problems from the X Window System. This claim is demonstrably false and was revised a little later, but led to the fact that the fronts hardened further. Critics - including Høgsberg - accused Canonical of wanting to torpedo the project with false statements. Canonical has since given up the development of Mir and will use Wayland in the future.

Web links

Individual evidence

  1. github.com . February 12, 2020.
  2. ^ Wayland Architecture. Explanation of Wayland architecture. Retrieved March 27, 2016 .
  3. ^ Wayland homepage. Explanation of the goals of the project in 1 paragraph. Retrieved June 2, 2020 .
  4. Is wayland replacing the X server? Retrieved June 2, 2020 .
  5. Kristian Høgsberg (English) - page at fosdem.org (accessed April 21, 2013).
  6. Interview: Kristian Høgsberg ( Memento of February 3, 2014 in the Internet Archive ) (English) - Page at fosdem.org for a conversation on January 29, 2012 (accessed on April 21, 2013).
  7. a b Wayland: A New X Server for Linux . Phoronix, November 3, 2008 (English) Retrieved April 21, 2013
  8. a b New Wayland X Server Looks to How a Modern Desktop works . ( Memento of October 29, 2013 in the Internet Archive ) The H, November 6, 2008 (English) accessed on April 21, 2013
  9. ↑ Display server: Wayland and Weston 1.3 released - Golem , October 11, 2013
  10. ^ Wayland Google Groups
  11. Wayland Meets Some Summer Love w / New Changes (English) - Phoronix , June 6, 2010 (accessed April 21, 2013)
  12. Wayland FAQ - accessed July 31, 2011
  13. Daniel Stone: The real story behind Wayland and X . February 1, 2012. Archived from the original on February 5, 2014. Retrieved October 22, 2013.
  14. ^ Daniel Stone: The real story behind Wayland and X (video) . February 1, 2012. Retrieved October 22, 2013.
  15. Martin Gräßlin: KWin becomes a Wayland compositor . Golem.de. April 22, 2013. Retrieved April 22, 2013.
  16. Forum entry by Nvidia employee Aaron Plattner . November 7, 2010. Archived from the original on December 16, 2013. Retrieved on December 13, 2013.
  17. Thorsten Leemhuis: Beginnings for Mir and Wayland support in Nvidia's Linux drivers. In: Heise online . October 7, 2013 . Retrieved October 22, 2013.
  18. Release Notes of the Nvidia driver 331.13 . Retrieved December 13, 2013.
  19. ^ Kristian Høgsberg: Wayland . Retrieved September 5, 2014. "No rendering API, all direct rendering"
  20. Kristian Høgsberg: Wayland Documentation 1.3 - Wayland Rendering . Wayland project. Archived from the original on September 5, 2014. Retrieved September 4, 2014.
  21. Wayland FAQ . Wayland project. Retrieved September 4, 2014. "Wayland doesn't render on behalf of the clients, it expects the clients to use whatever means they prefer to render into a shareable buffer."
  22. ^ Jesse Barnes: Introduction to Wayland . Intel Open Source Technology Center. "Does not include a rendering API - clients use what they want and send buffer handles to the server"
  23. ^ Liane M. Dubowy: Slim Linux desktop: Enlightenment E20 released. In: Heise online . 1st December 2015 . Retrieved April 22, 2017.
  24. ^ [Phoronix] GNOME Will Move Full-Speed ​​With Wayland Support . Phoronix.com. March 13, 2013. Retrieved April 8, 2013.
  25. Martin Gräßlin: KWin runs on OpenGL ES . November 28, 2010. Retrieved October 22, 2013: “It does not only help, it is a must have to start working for Wayland. So to say it's the first part of the KWin port to Wayland. "
  26. Martin Flöser: On the Road to Modern OpenGL (ES). In: Martin's blog. January 18, 2011, accessed January 5, 2020 (American English).
  27. Martin Flöser: The History on Wayland Support inside KWin. In: Martin's blog. April 21, 2013, accessed January 5, 2020 (American English).
  28. IVI / IVI Setup - Tizen Wiki. Wiki.tizen.org, accessed April 8, 2013 .
  29. ^ Upcoming Technologies: Wayland and oFono. Tizen, accessed April 8, 2013 .
  30. Jolla's First Smartphone Powered By Wayland - Phoronix. Retrieved January 5, 2020 .
  31. COPYING - wayland / wayland - Wayland Compositor Infrastructure. Retrieved January 5, 2020 .
  32. ^ Kristian Høgsberg: Casually Defiant: Premature publicity is better than no publicity. In: Casually Defiant. November 3, 2008, accessed January 5, 2020 .
  33. Linux Community: Canonical triggers Shitstorm - Golem , March 9, 2013
  34. Martin Gräßlin: Kwami: Wayland vs. Me . KDE developer on Ubuntuusers.de, March 7, 2013
  35. Ferdinand Thommes: Linux: Ubuntu is preparing for GNOME and Wayland . In: ComputerBase . ( computerbase.de [accessed on April 23, 2017]).