THE X FILES
Linux Format|August 2021
Jonni Bidwell wants to know why a middle-aged display server is still at the heart of the Linux desktop.
Jonni Bidwell

Last issue we studied Ubuntu 21.04, which marks the distro’s shift from the X.org display server to Wayland (on amenable hardware). But this isn’t the first time Canonical tried using Wayland by default.

Ubuntu 17.10 shipped with this configuration, but users were displeased. Come to think of it, Ubuntu 17.10 (Artful Aardvark) also had an artful habit of bricking Lenovo laptops and had to be re-released. And it was disliked by fans of the Unity desktop who saw their favourite desktop replaced by Gnome. Anyway, that Wayland experiment never made it to the next Ubuntu LTS (Breezy Badger), and nor is it present in the current LTS (Focal Fossa). Things have stabilised by now, so barring any mishap the next Ubuntu LTS will finally make the shift to Wayland.

But why do we need Wayland? And what exactly is this X thing anyway? The answers are complex and have lengthy stories behind them. But hopefully this feature adds at least a small amount of clarity to the situation.

Ultimately, X has been with us for over 30 years, and it has no business serving the displays and running the applications that modern workloads entail. Wayland has been with us a while, too. It was first dreamed up in 2008 and has been powering devices (just not necessarily Linux desktop PCs) from the get-go. It’s been the default on Fedora for ages, and probably works just fine on other distros, too. Maybe even better than fine…

The venerable X Window System has been powering Linux desktops since the 90s, and powering UNIX (and Ultrix) machines since development began in 1984. It was formed as part of Project Athena, a joint effort between MIT and Digital Equipment Corporation (DEC) with the goal of providing students with computing resources.

The X name, and indeed design, was inspired by a predecessor, the W Window System, itself built for the experimental V operating system (which had a distributed, micro-kernel architecture, but until W had no means of talking to a local display). The main change between W and X is the use of synchronous versus asynchronous drawing primitives, in keeping with Unix design ideals. Functionally, X provides a client/server interface between physical objects (monitor, keyboard and mouse) and imaginary things (the desktop).

One reason why there weren’t desktops as we know them until the 1980s was because memory wasn’t fast enough to act as a back buffer. Once it could handle sending that buffer to the scan-out port, things became more tractable and enabled systems like X, Sunview, NeWS and Display Postscript to display at 60Hz.

Sharing the knowledge

There’s a story behind everything and X’s genesis story is about being constantly sidetracked. Bob Scheifler was working on his masters thesis at MIT, on the subject of Argus (a multithreaded language environment). He wanted to debug multiple threads at the same time, and since there was no notion of a window manager or terminal multiplexer in the world of 1984 Unix, this required multiple physical terminals. There also was no notion of Free Software, but there was a culture of sharing between universities and research institutions.

So the W code (originating from Stanford) ended up in Bob’s hands and he set about porting it to Unix. Two weeks later he had the world’s first version of X running. That and the five subsequent releases were used internally at MIT, but again the sharing culture meant it soon escaped those confines.

X9 was released under the permissive MIT License and a number of components only shipped in binary form. In his 2020 Linux.conf.au talk veteran X developer Keith Packard described X10 as ‘almost useable’ and, thanks to IBM sponsoring a porting effort to their new RT PC (RISC Technology Personal Computer) models, included nearly all the source code for that architecture. Development took place at opposite sides of the country, with tapes being FedEx-ed nightly between MIT and Stanford. This proved unsustainable so further development took place on America’s East coast.

Continue reading your story on the app

Continue reading your story in the magazine

MORE STORIES FROM LINUX FORMATView All

Pinhole photography with the HQ Camera

Interchangeable lenses enable us to experiment with that historical curiosity, the pinhole camera, Mike Bedford shows you how.

10+ mins read
Linux Format
October 2021

Linux Mint 20.2

Jonni Bidwell is running low on mint metaphors and time, but the promise of some budget mojito mix expedited this review.

6 mins read
Linux Format
October 2021

Griftlands

Management love a tough negotiation but not with the staff, so Sam Greer will be getting a quick visit from the LXF shock troops right about now…

5 mins read
Linux Format
October 2021

IT'S A VIRTUAL SERVERWORLD

From his caravan in a field in North Wales, David Rutland takes you on a touring holiday through the world of virtual private servers.

10+ mins read
Linux Format
October 2021

Going back to 8-bit with the Atari 800

Les Pounder goes back to a time before E.T. cartridges were buried in the desert and 48KB was considered lots of RAM.

10+ mins read
Linux Format
October 2021

CUSTOMISE MINT 2O!

Linux Mint is fantastic, but it’s also flexible, malleable and tweakable. Jonni Bidwell shows you how to truly make it your own.

10+ mins read
Linux Format
October 2021

Get better Steam and Proton gaming

Michael Reed looks at what it takes to run a large variety of games under Steam, including those designed to run on Windows.

10+ mins read
Linux Format
October 2021

Create, edit and use custom mapping data

If you like Google Maps you’re going to love QGIS. Mike Bedford shows you how to get started and introduces some of its functionality.

10+ mins read
Linux Format
October 2021

AMD Ryzen 7 5700G

The AMD APU makes a more-than-welcome return for Chris Szewczyk.

3 mins read
Linux Format
October 2021

BEST STRATEGY GAME - 0 A.D.

Version: 0.24 Web: https://play0ad.com

1 min read
Linux Format
September 2021