[SunRescue] Re: Multics

Joshua D. Boyd rescue at sunhelp.org
Wed May 23 07:53:44 CDT 2001


On Wed, 23 May 2001, Ken Hansen wrote:

> Not quite...
> 
> Ken Thompson and Dennis Ritchie did not code Unix "over a weekend" to "play
> video games."
> 
> You appear to have taken several true stories and made them into one, not
> real story.
> 
> The first video game was at MIT, Space Wars, IIRC, ran on a PDP-<very low
> number>.
> 
> Unix evolved over a long period, starting with a design coded on a PDP-<very
> low number> that was sitting idle at Bell Labs. They eventually got funding
> to twist Unix into a useful office automation package for the Patent Office
> at Bell Labs...

First, I didn't say anything about the first video game running on Unix.

I think you refer to http://cm.bell-labs.com/cm/cs/who/dmr/hist.html

For two relevent paragraphs, see after my sig.  So, it wasn't quite over a
weekend.  I phrased it that way more for effect.  And personally, I've
always appreciated that the unix we know and love, while originally a
video game machine, was first put to use as a word processor, thus setting
off a long tradition of Unix being really good with processing long and or
complex documents.  Many software development houses with their 500 page
Word design documents would do well to pay attention to the Original Unix
usage, and to the work of the guy who is writing "The Art of Computer
Programming" (name slipped my memory.  I know it should be embarassingly
obvious...).



--
Joshua Boyd

Also during 1969, Thompson developed the game of `Space Travel.' First
written on Multics, then transliterated into Fortran for GECOS (the
operating system for the GE, later Honeywell, 635), it was nothing less
than a simulation of the movement of the major bodies of the Solar System,
with the player guiding a ship here and there, observing the scenery, and
attempting to land on the various planets and moons. The GECOS version was
unsatisfactory in two important respects: first, the display of the state
of the game was jerky and hard to control because one had to type commands
at it, and second, a game cost about $75 for CPU time on the big computer.
It did not take long, therefore, for Thompson to find a little-used PDP-7
computer with an excellent display processor; the whole system was used as
a Graphic-II terminal. He and I rewrote Space Travel to run on this
machine. The undertaking was more ambitious than it might seem; because we
disdained all existing software, we had to write a floating-point
arithmetic package, the pointwise specification of the graphic characters
for the display, and a debugging subsystem that continuously displayed the
contents of typed-in locations in a corner of the screen. All this was
written in assembly language for a cross-assembler that ran under GECOS
and produced paper tapes to be carried to the PDP-7. 

Space Travel, though it made a very attractive game, served mainly as an
introduction to the clumsy technology of preparing programs for the PDP-7.
Soon Thompson began implementing the paper file system (perhaps `chalk
file system' would be more accurate) that had been designed earlier. A
file system without a way to exercise it is a sterile proposition, so he
proceeded to flesh it out with the other requirements for a working
operating system, in particular the notion of processes. Then came a small
set of user-level utilities: the means to copy, print, delete, and edit
files, and of course a simple command interpreter (shell). Up to this time
all the programs were written using GECOS and files were transferred to
the PDP-7 on paper tape; but once an assembler was completed the system
was able to support itself. Although it was not until well into 1970 that
Brian Kernighan suggested the name `Unix,' in a somewhat treacherous pun
on `Multics,' the operating system we know today was born. 





More information about the rescue mailing list