Clem,
Many thanks for your informative post!
Assuming I can read the tape, I know I do have a copy
of 4.1a distribution on 9-track.
That is great news. Let me know once you had a
chance to look at it. I am in no hurry, so whenever you have time, even if that is months
from now.
Diomidis is correct, 4.1a use Joy/Cooper/Leffler
reimplementation of of the BBN stack, not the original BBN stack.
I suspected as
much, but I am happy to hear it confirmed. I've been told on several occasions that
4.1a contained the original BBN stack.
The BBN stack (Gurwitz et al) was for 4.1 (and other
UNIX and non-Unix systems). I do not believe I have a copy of that tape. Rob or maybe
Eric Cooper might.
How Sam added the code into the UCB SCCS, I never knew (you can ask him directly, he is
still findable these days). Eric Cooper took the basic BBN distribution and put it on
the UCB 4.1 systems around campus >>before<< Joy started the sockets work i.e.
the installation was done by installing 4.1, then taking the BBN tape and installing it as
is.
I can confirm all this. I do have several copies of the BBN tapes from '81 and
'82, they survived in Kirk McKusick's archive. They indeed contain material that
is 'copied over' a clean 4 or 4.1 build tree. The first complete BBN beta is
from May 1981 and Joy started on his network code in October 1981.
BTW: about 3 years later, the BBN2 stack comes out
from Rob and team and it is actually even more interesting; because it now uses the
sockets interface (not the Chaosnet/UofI nami trick), and adds a number of both
performance enhancements (Van Jacobson's work, etc.) as well as a more complete
implementation of the IP stack. I >>might<< have a copy of that tape
squirreled away; but I'll have to look.
I think this might be the material that appears in the BSD source tree in 1985, right? Van
Jacobson's work is ~1988, I think, but I could well be mistaken. I think the main
performance improvement between the 1982 and the 1985 version was a switch from a kernel
thread model to a software interrupt model, but as yet I haven't grasped why this is
better and my assumption may be incorrect.
Paul