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 Xeon E5-1680 v3 & E5-2687W v3 Compared To The Core i7 5960X On Linux
  2. Intel 120GB 530 Series SSD Linux Performance
  3. Btrfs/EXT4/XFS/F2FS RAID 0/1/5/6/10 Linux Benchmarks On Four SSDs
  4. AMD's Windows Catalyst Driver Remains Largely Faster Than Linux Drivers
Latest Linux Articles
  1. Is The Open-Source NVIDIA Driver Fast Enough For Steam On Linux Gaming?
  2. Linux 3.18 File-System Performance Minimally Changed But Possible Regressions
  3. AMD Radeon Gallium3D Is Catching Up & Sometimes Beating Catalyst On Linux
  4. CS:GO & TF2 Extensively Tested On The Newest Open-Source Radeon Linux Driver
Latest Linux News
  1. HHVM 3.4 Adds New Features, Support
  2. More Radeon Driver Changes Queued For Linux 3.19
  3. Unigine 2.0 Alpha 2 Adds C# Support
  4. FFmpeg Is Returning To Ubuntu With 15.04 Release
  5. Linux Version Of Civilization: Beyond Earth Still Coming Along
  6. Yahoo To Become Default Search Provider For Firefox
  7. Better Fan Control Support Coming To The Open-Source Radeon Driver
  8. PTS 5.4 Milestone 6 Released - Official "Lipki" Release Is Near
  9. Ian Jackson Resigns From The Debian Technical Committee
  10. Valve's VOGL Is Finally Back To Having New Commits, OS X Support
Latest Forum Discussions
  1. Debian Init System Coupling Vote Results
  2. Updated and Optimized Ubuntu Free Graphics Drivers
  3. Ubuntu Developers Still Thinking What To Do About Adobe Flash Support
  4. Debian Developer Resigns From The Systemd Maintainership Team
  5. How to get rid of Linux
  6. how to configure module phoromatic ?
  7. Major Performance Breakthrough Discovered For Intel's Mesa Driver
  8. Script for Fan Speed Control