Here is a question for the old hands from the Labs, I’m trying to get the timeline of some development steps right.
The two main things are: when did the 4.1 merge take place, and when were ‘streams’ added?
Going by file dates, the surviving 8th edition source appears to be from 1985. I can see that a lot of files in /usr/include did not change after Jan 1982 (e.g. nlist.h). This suggests that early in 1982 the merge between 4.1 code and 32V code took place, to create the foundation for further development (“proto 8th edition”, so to speak).
Similarly, there are a dozen or so files in the kernel that all have a file date of November 1982. The most interesting one of these is “dtline.c”, a character mode Datakit driver: it uses ‘streams’. This suggests that there was a further code merge late in 1982 and implies that ‘streams’ were developed prior to that date.
From the S/F-Unix papers it seems that ‘streams’ did not exist in 1981, at least they are not mentioned in an otherwise comprehensive set of papers. On the other hand, the S/F-Unix work was done in the Exploratory group, not the Research group: maybe it was inappropriate to mention.
All in all, my hypotheses would be that:
- the 32V/4.1 merge took place early in 1982
- ‘streams’ were developed in 1982 on 32V (maybe also V7) systems
- a further merge took place late in 1982 that combined the new base with latest developments
Does that sound correct, or was it all different?
Related is the question when the "file system switch" was added. It must have been later than 1981 and before 1985, but I have not been able to pinpoint it further.
Andrew Hume (andrew(a)humeweb.com) has had trouble posting this, and asked me
to try. Reply directly to Andrew, not to me.
I have the following manuals available:
3 Eight Edition Unix manuals (2 shrink-wrapped, one not (but still good
Unix programmers manual, Release 3.0 (Dolotta et al, 1980)
Sixth Edition programmers manual (Bell Labs cardboard cover)
Sixth Edition Documents manual (Bell Labs cardboard cover)
Seventh Edition programmers manual Volume 2a, Jan 1979. (actually documents
such as make, lint, troff etc)
Documents for UNIX, Volume 2 (Dolotta et al, 1981) sections E and F (make,
lex, security etc)
All the above are in pretty good condition, given they are bound in
cardboard covers and are 40ish years old.
I’d prefer to give them to someone archival, but otherwise, first come,
Anybody feel up for a bit of an archaeology challenge? Warner Losh is
currently poking through a bunch of bits but not having much luck decoding
them correctly. I've put a copy here: https://minnie.tuhs.org/Y5/Challenge/
If you can help, I'd suggest report major findings here, and we can use
the #TUHS channel in the ClassicCmp Discord server for chat.
Here's what Warner has found out so far:
It's quite interesting, but in a
format I've so far not been able to decode more than with emacs.
However, there's all kinds of wonderful here. This looks like it was a
dump from a VMS (or maybe similar DEC OS) ANSI tape. There's 4 datasets
of 2.5MB each. The first one appears to be a V5 tree of some sort (at
least it matches the V5 sources in places I can spot check in
Dennis_v5. The second block looks v6ish or maybe pwbish, but no kernel
sources. I don't think it's a continuation of the v5 stuff from the
first dataset. The third dataset is all binaries, as far as I can tell
so far, but things like mv and passwd. The 4th dataset appears to be
the dump of a VENIX-11 system, complete with source.
The 3rd dataset appears to be a Venix system. At least it has venix and
venix.old in what looks like the root directory. Still trying to sort
out extracting files from these datasets. v7fs hates them, but I'm
almost positive that's what they are.
Crazy longshot post, part 27 in an infinite series
Are there any Xenix-11 images (boot tapes or disk images) around? My
googling skillz aren't mad enough to find this.
I've seen the Xenix 86 image in the archive that was copied from pce's
image warehouse which is cool and the generation of code I'm looking for,
but is for 8086 machines...
Another book from the same era--quite good--is A Unix Primer
by Ann Nichols Lomuto and Nico Lomuto, copyright 1983.
Before the title page appears an interesting endorsement:
"Prentice-Hall Software Series, Brian Kernighan, advisor
Prologue to TPC. Bob Morris did a visiting-researcher stint at
AT&T, where he became aware of infelicitous software architure
proposed for ESS 5. He thought Research could do it better. Ken,
Joe, and Lee bit. Lee's architecture was indeed novel: every
device in the system, right down to each touch-tone button, was
modeled as a process. Only after the clean model was working
were some processes--notably the buttons--jammed together to
cinch in the process table.
The team got the switch working in a matter of months--in time
to demonstrate it to Indian Hill before ESS was irrevocably
set in stone. ESS architecture was indeed rethought, taking
some ideas from TPC.
TPC was named after "TPC, The Phone Company" in the 1967 film,
"The President's Analyst".
About a year ago the Research telephone switch came up on this list.
Rob Pike wrote:
"But the PBX story is correct. To demonstrate how message passing was a good
model for a switching system, in particular to make a point to the
switching systems division of Bell Labs/AT&T, Ken and Joe bought a
commercial PBX and swapped out its processor for a PDP-11/23 (I think), and
programmed it up. It was just before I arrived there but I was given the
impression it had the desired strategic influence on Indian Hill.
The feature we all loved it for was that instead of ringing the phone in
the Unix room when you got a call, it would announce your name through the
voice synthesizer: "Phone call for Ken." "Phone call for Joe". One rapidly
stopped even hearing the announcement if it didn't end with your name.”
I’ve been having an off list discussion with Bill Marshall and this PBX was influential in another way as well.
First of all, Bill can confirm that it indeed was a 11/23, the same racks were used for Datakit switches. He also remembered that the software for this PDP-11 went by the nickname of “TPC” - for Tiny Phone Company. Lee McMahon was on the team writing TPC.
The first software for the Datakit switch was written by Greg Chesson and was called “CMC” (for ‘Common Control’). There are still some references to CMC in the 8th Edition source code.
This first software was later replaced by new code designed by Lee McMahon that was modelled after TPC. This new code was named “TDK”. This, too, can be seen in the 8th Edition source. The TDK protocols for building and releasing a Datakit virtual circuit appear to have been in use into the 1990’s.