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

The Wayland Situation: Facts About X vs. Wayland

Eric Griffith

Published on 7 June 2013
Written by Eric Griffith
Page 2 of 4 - 282 Comments

The Fixings Of Wayland

(numbered to match-up with the failings of X.)

I) The entire protocol is versioned. Every listener gets exactly the version they support, nothing more. No more randomness.

II) The input system in Wayland looks a lot like Xinput 2.2, minus all the legacy cruft and minus the Master/Slave relationship between inputs. Everything gets one virtual keyboard, one virtual mouse, and one non-virtual tablet interface. The nightmare called multitouch will finally be sorted out. Note from Daniel: As one of the authors of multitouch, I feel pretty qualified to say that it's shit.

III) Wayland HAS no drawing API to mess around with. Wayland wants buffers filled with pixels from clients and, aside from the security hooks to make sure clients aren't messing with eachother's buffers, it doesn't care how those pixels got there. Clients control what pixels those buffers hold, this way what gets displayed on screen is EXACTLY what the client wants.

IV) Wayland is minimal. There's no over-arching Psuedo-OS controlling your graphics display. There's no 26yr old API “Getting in the way.” Clients carry the brunt of the work, which is okay because clients don't have to maintain extreme-backwards-compatibility. Qt5 dropped Qt3 support. X still has to maintain things that were written 26yrs ago. And things from 26yrs ago, are getting in the way of fixing things TODAY.

            A) Note from Daniel: Wayland is also non-blocking, so your entire desktop doesn't stop rendering just because one client hangs or is going through an expensive operation. Only THAT client stops rendering.

V) Composition is mandatory under Wayland. That isn't to say that everything has to have 3D effects or wobbly windows. By composition we mean that everything is tear-free, flicker-free and flash-free. Wayland's motto is “Every frame is perfect.” Every pixel is exactly WHAT it should be, WHERE it should be, and be there WHEN its supposed to be there-- as dictated by the clients.

VI) Clients handle fonts, like they do now anyway.

VII) Multi-monitors is a client problem. Same with multiple graphics cards (Optimus). Wayland only wants buffers filled with pixel and to be told where to display them. It doesn't care how they got there.

VIII) Unlike X which had everything as its own window at first, Wayland supports 2 types of windows. Top-level windows, which are essentially wrappers around multiple buffers. And sub-surface windows, which is mainly targeted at video playback.

            A) They are kept coherent though, unlike X, so no tearing or thrashing of the window just because you scrolled down the YouTube comments section while the video was playing.

IX) Wayland doesn't deal in global coordinates, at least not publicly. It deal's in surface-relative coordinates. Wayland's coordinate counter is 31-bits, which means each SURFACE (read: window) can be 2,147,483,648 pixels in size.


X) As a security precaution...your screensaver and locker are apart of the compositor. This has an added benefit because your compositor (Eg: kwin) DOES understand your media keys, so even while your screen is locked you can still mute your media.

Latest Linux Hardware Reviews
  1. Intel Launches The Core i7 5960X, Mighty Powerful Haswell-E CPUs
  2. AMD Radeon R9 290: Gallium3D vs. Catalyst Drivers
  3. AMD Radeon R9 290 Open-Source Driver Works, But Has A Ways To Go
  4. Trying The Configurable 45 Watt TDP With AMD's A10-7800 / A6-7400K
Latest Linux Articles
  1. Testing For The Latest Linux Kernel Power Regression
  2. The Most Energy Efficient Radeon GPU For AMD Linux Gaming
  3. 20-Way Radeon Comparison With Open-Source Graphics For Steam On Linux Gaming
  4. Preview: OS X 10.10 Yosemite vs. Ubuntu Linux GPU Performance
Latest Linux News
  1. Enlightenment E19 RC3 Shows Off The New Wayland Compositor
  2. Metro Redux Is Going To Require OpenGL 4.x On Linux
  3. Jailhouse v0.1 Released As A Basic Hypervisor For Linux
  4. Google's Chromebook "Samus" Now Supported By Coreboot
  5. Chrome 38 Now In Beta With Exciting Advancements
  6. Ubuntu's Utopic Unicorn 14.10 Beta 1 Released
  7. Genode OS 14.08 Has New GUI Architecture, Pluggable VFS
  8. Another Intel Linux Power Regression Is Being Investigated
  9. DNF Makes It A Step Closer To Replacing Yum On Fedora
  10. OS Battle: Linux Takes 1.7% Desktop Marketshare
Latest Forum Discussions
  1. Canonical Joined The Khronos Group To Help Mir/Wayland Drivers
  2. Users defect to Linux as OpenBSD removes Lynx from base system
  3. Radeon HD5670 and Ubuntu 14.04
  4. Updated and Optimized Ubuntu Free Graphics Drivers
  5. AMD Releases UVD Video Decode Support For R600 GPUs
  6. Best Radeon for a Power Mac G5?
  7. OC capability - Intel Core i5 4690K & Biostar Hi-Fi Z97WE
  8. Announcing radeontop, a tool for viewing the GPU usage