Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
From: reid@glacier.ARPA (Brian Reid)
Newsgroups: net.unix-wizards,net.sources.bugs
Subject: Re: X Window System Release 3 (Protocol Version 10) now available
Message-ID: <4268@glacier.ARPA>
Date: Sat, 15-Feb-86 16:56:31 EST
Article-I.D.: glacier.4268
Posted: Sat Feb 15 16:56:31 1986
Date-Received: Sun, 16-Feb-86 09:13:49 EST
References: <184@mit-eddie.UUCP>
Reply-To: reid@glacier.UUCP (Brian Reid)
Distribution: net.unix-wizards,net.sources
Organization: Stanford University, Computer Systems Lab
Lines: 42



I've always thought that announcements about X should include some
explanation of what it is and where it came from--everybody seems to think
the whole idea came from MIT.

About 5 years ago the Distributed Systems group at Stanford started work on
an operating system called "V". V had a window package. My students and I
didn't like the V window package very much, so Paul Asente and I set out to
design a replacement window package for V. Paul did all of the programming
himself, and that gave him the right to name it. He called it "W". The
manual for the V system showed a rising sun on the cover (because at the
time V ran only on Suns); the manual for the W package showed a rising sun
framed by a windowshade. W was an alternative window system for the V
operating system.

W was a very hot property, and was tens of times faster than the V window
system, but it had one fatal flaw. It used V for interprocess communication.
In particular, it made the assumption that interprocess communication was
very fast. Under V that is a fair assumption; in most other places it is not.

Paul Asente took a summer job at DEC Western Research in 1983, and for his
summer job he ported W to run under 4.2BSD. The resulting port was very slow
because it used 4.2BSD interprocess communication. 

About 2 years ago Paul sent a tape of the 4.2BSD port of W to MIT for
Project Athena.  The folks at MIT put a lot of work into it, and in
particular they rewrote it so that it didn't use the BSD interprocess
communication facility.  Unfortunately, they also added 1 to the name,
turning W into X, and removed all traces of its origins from the comments in
the code. Although the MIT folks have certainly had a major impact on the
code of X, its design and internal structure remain quite similar to the
one that Paul Asente and I designed 4 years ago, and which Paul subsequently
programmed and sent to them. Paul and I would both appreciate it if the
people who distribute X would at least explain its history and origins,
rather than let the world believe that the whole thing was their creation
and their idea.

Brian Reid
Stanford
-- 
	Brian Reid	decwrl!glacier!reid
	Stanford	reid@SU-Glacier.ARPA

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Posting-Version: version B 2.10.1 6/24/83; site eddie.UUCP
From: jg@eddie.UUCP (Jim Gettys)
Newsgroups: net.unix-wizards,net.sources
Subject: Re: X Window System Release 3 (Protocol Version 10) now available
Message-ID: <222@eddie.UUCP>
Date: Mon, 17-Feb-86 15:23:50 EST
Article-I.D.: eddie.222
Posted: Mon Feb 17 15:23:50 1986
Date-Received: Wed, 19-Feb-86 01:06:27 EST
Distribution: net.unix-wizards,net.sources
Organization: MIT, Cambridge, MA
Lines: 50


At Brian Reid's request, we wish to acknowledge the great debt we have to
Paul Asente, Chris Kent, and Brian and his group group at Stanford in
the development of X, as well as many of the ideas embodied in the V
system.

We (Jim Gettys and Bob Scheifler) started not quite two years ago with "W",
written by Paul Asente at Stanford for the "V" system, and then ported to
Unix on the Vs100 at DECWRL by Paul Asente and Chris Kent.  Without W, it is
very unlikely that enough momentum would ever have been generated at MIT
to develop an interesting window system under Unix, much less a network
transparent one like X.  We think it is fair to say that had W never
existed, X would not exist today.

Indeed, the name "X" is due to the fact we started with "W".  Paul Asente's
Chris Kent's work are acknowleged not once, but in a number of places in
the documentation.  To our knowledge, no code remains from W at this date,
although some basic structure and a few algorithms survive.  Paul's name is
not in the X server source; neither were they in the W server source we have
(the only part of X that has any W code in it); neither is Bob Scheifler's
name in the X server sources now.  We are sorry if anyone feels slighted for
their contributions to X due to oversight on our part.  We are not embarrassed
by the connection, but wish to acknowledge the heritage of ideas involved,
from V, to W, to X.  We know of little better way than the name "X" to
recognize this.

Paul has since contributed much code to X, for which we are very greatful.
These include several library packages, modifications to the terminal
emulator, and one of the three existing window managers.

Brian is incorrect in a number of respects about "X"; while much of the model
of heirachical subwindows is due to W, X differs in substantial ways from W,
to the point that continuing to call it W would have been a misnomer.  W is
based on a synchronous IPC protocol, which when W was ported to Unix had
severe performance consequences, due to Unix's relatively slow message
facilities.  X however, while still based on a byte stream (e.g., TCP), is
based on an asynchronous message protocol; X clients only block when when
information is required from the server.  This, along with buffering, accounts
for the up to 30x higher performance of X over what we started with (W under
Unix).  In addition, W maintained display lists in the window system server,
which we maintain when needed in client programs only.  This is a fundamental
assumption which has a large impact throughout the system.  There are also
other substantial differences and additions between W and X, such as
transparent windows and color support.

If Unix in general is to survive in the developing distributed environment
it will have to take a large dose from the work done at Stanford, starting
with many ideas in the V system; X is only a small step in that direction.

				Jim Gettys	jg@athena.mit.edu
				Bob Scheifler	rws@bold.lcs.mit.edu

Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
From: reid@su-glacier.arpa (Brian Reid)
Newsgroups: net.unix-wizards
Subject: Re: X Window System Release 3 (Protocol Version 10) now available
Message-ID: <1068@brl-smoke.ARPA>
Date: Tue, 18-Feb-86 15:34:33 EST
Article-I.D.: brl-smok.1068
Posted: Tue Feb 18 15:34:33 1986
Date-Received: Wed, 19-Feb-86 20:36:27 EST
Sender: news@brl-smoke.ARPA
Lines: 39



I've always thought that announcements about X should include some
explanation of what it is and where it came from--everybody seems to think
the whole idea came from MIT.

About 5 years ago the Distributed Systems group at Stanford started work on
an operating system called "V". V had a window package. My students and I
didn't like the V window package very much, so Paul Asente and I set out to
design a replacement window package for V. Paul did all of the programming
himself, and that gave him the right to name it. He called it "W". The
manual for the V system showed a rising sun on the cover (because at the
time V ran only on Suns); the manual for the W package showed a rising sun
framed by a windowshade. W was an alternative window system for the V
operating system.

W was a very hot property, and was tens of times faster than the V window
system, but it had one fatal flaw. It used V for interprocess communication.
In particular, it made the assumption that interprocess communication was
very fast. Under V that is a fair assumption; in most other places it is not.

Paul Asente took a summer job at DEC Western Research in 1983, and for his
summer job he ported W to run under 4.2BSD. The resulting port was very slow
because it used 4.2BSD interprocess communication. 

About 2 years ago Paul sent a tape of the 4.2BSD port of W to MIT for
Project Athena.  The folks at MIT put a lot of work into it, and in
particular they rewrote it so that it didn't use the BSD interprocess
communication facility.  Unfortunately, they also added 1 to the name,
turning W into X, and removed all traces of its origins from the comments in
the code. Although the MIT folks have certainly had a major impact on the
code of X, its design and internal structure remain quite similar to the
one that Paul Asente and I designed 4 years ago, and which Paul subsequently
programmed and sent to them. Paul and I would both appreciate it if the
people who distribute X would at least explain its history and origins,
rather than let the world believe that the whole thing was their creation
and their idea.

Brian Reid
Stanford