Skip to content

From application to representation: the story of X

Ars takes on the Linux graphics stack from X to Wayland. This is a maturation of the video subsystems in light of the evolution of distributed computing resources and graphics hardware.

X is the oldest lady at the dance, and she insists on dancing with everyone. X has millions of lines of source, but most of it was written long ago, when there were no GPUs, and no specialized transistors to do programmable shading or rotation and translation of vertexes. The hardware had no notion of oversampling and interpolation to reduce aliasing, nor was it capable of producing extremely precise color spaces. The time has come for the old lady to take a chair.

The history is a convergence of many ideas. One is the user interface. Another is the rise of the graphics processing units. A third is the networking ideas of servers and clients. Yet another is in the segregation of display tasks between the user interface software and the system. It is an evolving problem. Ars notes how the kernel of innovation often arises.

Software engineers live in a world of deep introspection. They spend most of the day solving complex problems, breaking problems apart and reconstructing them. Often, when they are distracted, their subconscious can make the most bizarre leaps, connecting half-baked ideas and partially solved algorithms. This can happen in the oddest of places, for example, in the shower, or cooking in the kitchen, or driving in a car. As Høgsberg drove through the tiny village of Wayland, Massachusetts, an idea that had been germinating in his mind crystallized. … His idea was to write a brand-new display manager and have it send 3D output directly to the kernel, bypassing X.

The resulting project, named Wayland, got notice because Shuttleworth is planning on moving Ubuntu graphics from X to Wayland. It has a lot of promise but it also has a lot of challenges ahead. Some of these challenges involve the cooperation of graphics hardware vendors such as AMD and NVIDIA to help in developing the lowest level driver interfaces.

What is happening is an attempt to break out of a technology that was developed to solve mini-computer problems in the early 80’s. That was also the time the original IBM PC was introduced. These technologies are heading for a convergence and a break in an evolutionary path. New paradigms are brewing. This is one. It has been thirty years in the making.

Post a Comment

You must be logged in to post a comment.