1

For the past few days I've been reading discussions about X.Org vs Mir vs Wayland and the way they differ from each other. I've read the following at Wikipedia:

A display server or window server is a program whose primary task is to coordinate the input and output of its clients to and from the rest of the operating system, the hardware, and each other. The display server communicates with its clients over the display server protocol, a communications protocol, which can be network-transparent or simply network-capable.

What is the server and the client on this context? Why was the rendering process made at the server before and now the approach is to let the client worry about rendering? What was the role of the client at the old days when server did the rendering, and what is the role of the server now that the client does the rendering?

Rui F Ribeiro
  • 55,929
  • 26
  • 146
  • 227
Mauricio
  • 111
  • 2

1 Answers1

2

These days real confusion can arise from the way that client and server were used by MIT when the X Windows environment was created.

The computing client was the big iron central computing facility.

The display server was your relatively cheap desktop appliance. It served up the display to the end user on behalf of the central client.

In this situation, it makes perfect sense for the display server to perform the rendering, and in fact that's exactly what used to happen.

Now of course, we have "client and server", and the server would be the central computing resource with clients sitting on people's desktops (or knees). Notice that the terminology has reversed its meaning.

Just to add complete confusion, a typical Linux-based workstation will have the client and server in the same device, but with the separation of computing client and display server it may help to explain why there is a convenient separation of the underlying command line based system and the GUI on top.

roaima
  • 107,089
  • 14
  • 139
  • 261