Copyright © 1987 by the Association for Computing Machinery,
Inc. Permission to make digital or hard copies of part or all of this
work for personal or classroom use is granted without fee provided
that copies are not made or distributed for profit or commercial
advantage and that copies bear this notice and the full citation on
the first page.|
This paper requires an MIT personal certificate for access:
The X Window System
You only need to read a subset of this paper. This paper provides a good opportunity to
try the approach of warming up by nibbling around the edges:
Start by reading the abstract, introduction (section 1), and summary
Next, read just the section titles. Once you have a picture of where
the authors are coming from, where they are going, and the route they
are taking, you are in a much better position to dive into the real
meat of the paper.
Read sections 2 (Requirements), 3 (System Model), and 7 (Exposures).
The other sections (sections 4-6 and 8-10) are optional reading.
While reading the X Windows paper, keep in mind that a client requests a
service and a server provides it. Relative to the display, the X server is
running locally (and controlling the display hardware), and the X client
may be running remotely (but wishes to display information to the user).
For example, suppose that you are sitting in Cambridge and running a
database application on a computer in California.
You may think of yourself as a client, and think of the database application as a server.
But from X's point of view, the database application is the client,
and the computer you are sitting in front of is the server. The database
application wishes to draw windows, but only the X Windows server (running
on your local computer) is permitted to directly manipulate your screen.
Thus, the database program must issue (display) requests, which the X
This is a nice "systems" paper to read because it describes a real,
working system and it explains the reasons choices where made from
among design alternatives, even pointing out when choices were
arbitrary. Furthermore, it is written for the most part in plain
English with a minimum of jargon.
You may also find it interesting to read "Myth: X Demonstrates the Power of Client/Server
Computing" (pages 127-128) in The UNIX-HATERS
Handbook for a different perspective on the X Window System. Are
the problems they identify a direct consequence of the design goals
mentioned in the initial paper, or are they an implementation
artifact? Notice that the UNIX-HATERS Handbook was written in 1994
and the X Window System of today may have resolved some of their
Questions or comments regarding 6.033? Send e-mail to the 6.033 staff at 6.033-staff at mit.edu or to the 6.033 TAs at 6.033-tas at mit.edu.
Top // 6.033 home //
$Revision: 28 $, last modified on $Date: 2009-02-06 16:40:46 -0500 (Fri, 06 Feb 2009) $ GMT by $Author: cowling $