1. Computers
  2. Display Drivers
  3. Graphics Cards
  4. Memory
  5. Motherboards
  6. Processors
  7. Software
  8. Storage
  9. Operating Systems


Facebook RSS Twitter Twitter Google Plus


Phoronix Test Suite

OpenBenchmarking.org

Wayland: A New X Server For Linux

Michael Larabel

Published on 3 November 2008
Written by Michael Larabel
Page 1 of 1 - 30 Comments

It's no secret that much of the code-base that makes up the modern-day X.Org Server is old and in some places bloated. The X.Org Server continues to evolve and has received a number of major additions in recent times, but wouldn't a clean and lighter server that is designed around today's needs be ideal? Red Hat's Kristian Høgsberg has started a new project, which is currently known as Wayland, and is just that: a new lightweight X Server. Wayland isn't just a rewrite of the current X Server, but instead it's a small server that is designed around some of the latest graphics technologies such as kernel mode-setting and the Graphics Execution Manager. Wayland also has its own built-in compositing manager.

The Wayland display server is very simple: everything is direct rendered and composited. There is no complicated APIs or objects to deal with like there is now with the X.Org Server. In an email to Phoronix, Kristian Høgsberg, creator of Wayland and also responsible for much of the DRI2 work in the current X.Org Server, describes this project as "a new display server that implements just the tiny fraction of X features that we actually use when running a composited desktop. Which is essentially buffer management (close to what DRI2 does in X.org), input handling and hooks to allow a compositor to composite the desktop. All rendering is done client side as direct rendering (how OpenGL works today, but pixman and thus cairo, for example, could learn how to do direct rendering too), and modesetting and other hardware setup is done in the kernel. This takes a lot of complexity out of the server."

While still early on in development, Wayland is quite small in size. Right now the server and compositor amount to a little more than 3,200 lines of C code and in just a handful of files. Wayland relies upon the mode-setting being within the kernel and expects some of the other functionality to be provided by shared libraries. Wayland provides a compositor, but a custom compositor can be provided atop of this lightweight server. Device input support was only added to Wayland yesterday afternoon and it's still very rudimentary. Many other features are also lacking compared to X Server 1.5, but the project is very young.

Kristian had also stated:

"At the same time, I'm trying to fix some of the problems with composite that we still have in the X server; input redirection, window resizing, syncing to vblank, throttling of animations and atomic, consistent redrawing. X specifies what the end results of a series of rendering requests must look like, but how the display looks while it's in progress is not discussed. GTK+ and Qt works around this to some extent by using double buffering, but we still see lag between window decorations and window contents while resizing etc. The wayland tag line is "every frame is perfect", by which I mean that applications will be able to control the rendering enough that we'll never see tearing, lag, redrawing or flicker."

What could Wayland be used for? Wayland may end up being a server used by GDM, as the screensaver server, for a safe-mode display server, or for graphical text consoles, among other possible uses. Wayland could also be a great fit for embedded systems / appliance applications where a custom compositor would sit atop Wayland to provide the user-interface and the Wayland server would then bind it to the application.

"As a first step this may be a graphics core on which we can run the GDM X server, the user session X server and maybe a screen saver X server. This will allow us to implement smooth transitions between X servers, cross fading or spinning the cube. As a next step, maybe the screen saver could then be ported to be a native wayland applications, then GDM (probably need GTK+ ported, not sure this is feasible), and then the session shell (panel, file manager etc) could be ported at which point the user session is a native applications. We'd need a rootless X server for running X applications under this environment. At this point X is only one remote display protocol, we could run RDP applications side by side with X applications under a wayland session."

Though before you think this will replace the current X.Org Server, Kristian explains "at this point wayland is just a prototype/playground for some ideas I've been toying with." Granted, it was Linus Torvalds who started the Linux kernel as a hobby and never expected it to support anything beyond early AT hard disks. Should Wayland survive, which we hope it will, this lightweight display server created by Kristian Høgsberg could end up serving well for some purposes and is designed around the latest display technologies in X.Org. It will likely be a while before Wayland is prepared to enter the spotlight, but we will keep you posted. For those interested in checking out the code that currently makes up Wayland, its git repository is housed at FreeDesktop.org.

Needed for Wayland is kernel mode-setting and best supporting that right now is ATI and Intel hardware. Fedora 9 started out supporting KMS on Intel hardware (A Preview of Kernel-based Mode-Setting), but due to the invasive changes that have been made to the driver recently, its support has regressed a bit. In Fedora 10 the optimal experience is with ATI R400 and R500 graphics cards. For those with NVIDIA hardware looking to use kernel mode-setting, continuing to evolve is the reverse-engineered Nouveau driver.

Also encompassing kernel-based mode-setting and other recent graphics innovations is Plymouth, another Red Hat project. Plymouth is a replacement for Red Hat Graphical Boot (RHGB) and more information (along with demo videos) is available in A Closer Look At Red Hat's Plymouth.

About The Author
Michael Larabel is the principal author of Phoronix.com and founded the web-site in 2004 with a focus on enriching the Linux hardware experience and being the largest web-site devoted to Linux hardware reviews, particularly for products relevant to Linux gamers and enthusiasts but also commonly reviewing servers/workstations and embedded Linux devices. Michael has written more than 10,000 articles covering the state of Linux hardware support, Linux performance, graphics hardware drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated testing software. He can be followed via and or contacted via .
Latest Linux Hardware Reviews
  1. NVIDIA GeForce GTX 980: The Best GPU For Linux Gamers
  2. ROCCAT LUA: A Linux-Friendly Gaming Mouse
  3. Cheetah Mounts: The Affordable Way To Put Your TV On The Wall
  4. Scythe Mugen MAX
Latest Linux Articles
  1. Preview: Radeon Gallium3D Performance For CS:GO On Linux
  2. XWayland Linux Gaming Performance With GNOME Wayland On Fedora 21
  3. EXT4/Btrfs/XFS/F2FS Benchmarks On Linux 3.17
  4. Fedora 21 Alpha First Impressions: It's Great
Latest Linux News
  1. Microsoft Announces... Windows 10 With A Start Menu
  2. Borderlands 2 Launches On Steam For Linux
  3. Debian Jessie Might Get Rid Of The kFreeBSD Port
  4. Fedora Might Try A New Scheduling Strategy For Its Releases
  5. AMD's Catalyst Working On A GLSL Shader Cache
  6. OpenMP 4.0 Offloading Is Closer For GCC 5
  7. Wayland Presentation Extension Added To Weston
  8. Intel Skylake Support Rolls Out To Mesa's DRM
  9. VA-API's Libva 1.4.0 Brings VP8 Encoding Support
  10. Operating System U Fails To Live Up To Its Goals
Latest Forum Discussions
  1. X.Org Women Outreach Program Only Turns Up Two Applicants So Far
  2. FSF Issues Statement On Shellshock Bash Vulnerability
  3. Advertisements On Phoronix
  4. NVIDIA Alerts Nouveau: They're Starting To Sign/Validate GPU Firmware Images
  5. New AMD Catalyst drivers out today
  6. Updated and Optimized Ubuntu Free Graphics Drivers
  7. Take the Steam Survey results with a grain of salt. It is flawed.
  8. AMD Wants To Know What's Wrong With Catalyst