\subsection{Replacing X11}
-Over the last 10 years, a lot of functionality have slowly moved out
-of the X server and into libraries or kernel drivers. It started with
-freetype and fontconfig providing an alternative to the core X fonts
-and direct rendering OpenGL as a graphics driver in a client side
-library. Then cairo came along and provided a modern 2D rendering
-library independent of X and compositing managers took over control of
-the rendering of the desktop. Recently with GEM and KMS in the Linux
+Over time, a lot of functionality have slowly moved out of the X
+server and into client-side libraries or kernel drivers. One of the
+first components to move out was font rendering, with freetype and
+fontconfig providing an alternative to the core X fonts. Direct
+rendering OpenGL as a graphics driver in a client side library. Then
+cairo came along and provided a modern 2D rendering library
+independent of X and compositing managers took over control of the
+rendering of the desktop. Recently with GEM and KMS in the Linux
kernel, we can do modesetting outside X and schedule several direct
rendering clients. The end result is a highly modular graphics stack.
+\subsection{Make the compositing manager the display server}
+
Wayland is a new display server building on top of all those
-components. We’re trying to distill out the functionality in the X
+components. We are trying to distill out the functionality in the X
server that is still used by the modern Linux desktop. This turns out
to be not a whole lot. Applications can allocate their own off-screen
buffers and render their window contents by themselves. In the end,