[TUHS] PWB vs Unix/TS

Clem Cole clemc at ccc.com
Thu Sep 12 01:36:32 AEST 2019


On Tue, Sep 10, 2019 at 11:53 PM Warner Losh <imp at bsdimp.com> wrote:

> "The Programmer's Workbench was started in 1973,[2]
> <https://en.wikipedia.org/wiki/PWB/UNIX#cite_note-Mashey-2> by Evan Ivie
> and Rudd Canaday to support a computer center for a 1000-employee Bell Labs
> division" is what wikipedia says, though that reference is in a acm queue
> article by Mashey...
That syncs and if Mash wrote the dates, I believe them  I thought it was a
year or two later by the time they were done.  But it is what I said.  PWB
was done to support the mainframe shops.

> but I've never actually used SCCS.
That's a shame - I still use it for simple things.  Lots less overhead than
things like git.   Somebody rewrote it in C++ and you can google it.
Larry's been trying to get me to switch to bitkeeper and I probably should,
but I admit SCCS has been good enough for a long time and the commands are
screwed in the roms in my fingers.

> Several timelines have, without references, Unix/TS or some variant of
> that going back to the V4 time frame. It's at best murky. There's some
> references in https://wiki.tuhs.org/doku.php?id=misc:snippets:mert1 including
> the post by Dan DeJegar which I had trouble parsing the ins and outs of.
As I said, aps or Ted are more likely to be the sources.  They were part of
the original USG team.   Steve just said he did not go over there until
System V time (which was what I was afraid).

And thanks for refreshing the bits in my brain... Dan DeJagar not Dale....
  I'll look at this and see if I can parse it for you in any way.

> Yea, the Columbus crew added a lot to the different versions, and merged
> from them, according to the above link and a few other sources.
Yeah, Phil Karn and Mary Ann both talked about that -- Mary Ann is on this
list she may be able to add some of the missing details.

I was never 100% sure where Columbus fit into the puzzle, but that team did
a lot of cool stuff.  Real-Time was their thing. The Indiana Hill crew (Tom
Bishop) did the 3B4000 and all of the SSI work linked to the support the
ESS development.

> Yes. There's some confusion as PWB and UNIX/TS become a USG thing that
> turns into System III and then the influx of CB-UNIX that's added before
> System V. How all that relates to USG, I'm quite unclear on still...
As I said, aps or Ted lived it from the USG side. I'll try to dig up
Armando and see what he can tell you,

> From the above recollection of Dan DeJAger...
Interesting...   as I said, let me look at what he says and see what I can

>  I've seen lots of references to UNIX/TS, but no versions, so this makes
> some sense... And it appears they go back further than V6...
It's possible, the first I saw any of the results was on top of V6, when
Ted brought some of it to CMU.

>  Yea, the detailed part of my history ends with the progeny of V7 (and I
> only have room for some, I've found maybe 3 dozen different systems that
> started out with V7 and then merge in System III or System V code for later
> versions or some variation on this theme).
That's because that was what the external (commercial) licenses allowed.
Each license subsumed the previous one. So if you had started a product
based on V7 (like DEC, HP, and Microsoft) you could ship with the System
III license (I remember that was >>huge<< issue with the vendors, which
AT&T was not super happy to accept - again this is the start of the
'consider it standard' stuff and they wanted everyone to use the bits from
Summit as the basis of their products, which was a problem because each
vendor had its own value add.

Later when OSF was created, this is part of the genesis of the 'Stable
License Terms' in OSF's founding principles.

So if you were a new company (say Masscomp or Stellar) from a legal
standpoint you started with the latest release (System III for the former,
SVR2 the later).  BTW, Sun is an interesting case, which I get too in a

DEC/HP/MSFT had started their engineering development for
Ultrix/HP-UX/Xenix on the original V7 license, so by the time of the System
III negotiation complete that had already been shipping some amount of
systems using V7 and their original licenses.  What the System III license
did was change the terms in some ways to help them.  But since the
engineering was solidly underweight for Ultrix, DEC kept their V7/BSD
kernel, MSFT switched Xenix to System III based (and then sold the whole
mess to SCO).  HP kept the V7/BSD kernel, but added all the System III
differences so it looked like System III the running program and used the
System III command system for a user.

At Masscomp, since we need to be on a 68K, we started with a V7/BSD kernel
from MIT's RTS labs, called NU (which TI and Apple both used also BTW).
 The command system was originally basically System III based but added BSD
commands as needed.  I joined to start the VM work and we folded the RTU
(real-time) stuff we had worked on with NU into 4.1 then 4.1C to be the
kernel, added MP support and we shipped (and it is what Larry originally
used).   The company quickly got sucked in the AT&T vs BSD fight, since the
AT&T and UCB command system were similar but different and about 1/3 of our
customers were University (BSD) types and the other 1/2 US
Gov/Commercial (att) and rest did not care.

Like HP, at first we tried add switches and create a super set of commands
(RTU 1.x).   This was a losing battle for a small company so, we gave up,
and our solution was "universes".  I created something I called
'conditionally dependant symbolic links' (CDSL - which I would resurrect in
Tru64 for the Cluster work) and we added the 'att' and 'ucb' commands to
set a variable in the kernel.  We then had two sets of commands  (/usr/att
and /usr/ucb).  Of course, this caused a new set of problems of trying to
do bug fixes in the two command streams [BTW: Pyramid would try the
Universe trick also as did a couple of other folks; but I don't know how
they implemented it - as I say, I did it with CDSL].

A couple of years later at Stellar we took a different tact.   We started
with the licensed kernel (SVR2) and hacked in what it was missing (SMP
support, sockets, a new/parallel FS) and added any BSD commands that were
not there, but left it as an otherwise System V system.

As I say, Sun was interesting.   They started as a firm after Masscomp, but
shipped their first systems (Stanford Sun Terminal boards running UNIX)
using Asa Romberger's V7 license (Unisoft).  When they got their own UNIX
license, it would have been a System III license like Masscomp the other
folks at that point.   From a technical stand point, they of course had
BSD; but I think they also had some of the MIT/NU stuff (like Jack Test's C
compiler and Tom Teixeria's 68k assembler).  So SunOS was based on BSD
while they shipped off an AT&T System III license (which was an anathema to
AT&T marketing, although it was allowed in that license).    Larry can tell
us how much pressure they felt with the V7/BSD command systems in the
market; but certainly since they originally sold to the Vax replacement
market - it did not seem like it mattered (until later).

When the SVR3 License came out, that was the 'best' from the licensee's
standpoint.  AT&T had finally backed off some of the more onerous terms,
but if you were not grandfathered into with an original V7 license, you had
to officially use their code -- although how strict and how/if they tried
to enforce I don't know.   (HP-UX was and still is a 'BSD' kernel from a
structural standpoint, but the user would never know.  I know IBM switch to
the SVr3 license (in fact bought it out) and I believe both HP and DEC
switched to using it to ship also (DEC was grandfathered to V7, so it was
terms switch for them.   I think at some point HP also bought out it
licenses, although I do not believe DEC ever did, Sun was another story

OSF would eventually use the IBM SVR3 license as its base [which makes me
believe IBM must have had a V7 redistribution license too.  Somebody like
Charlie Saurer might know].  Anyway, IBM, DEC and HP all shipped OSF
'licensed' systems although only DEC would switch to an OSF/1 based kernel.

The quick story on Sun is that as Larry has pointed out there was a deal at
the CEO level that brought SunOS and SVR4 together to create what would
eventually would become Solaris 2.0 (I'll let Larry can fill in those
details, as it was not truly SVR4 nor SunOS when it was done).  AT&T, ney
Novell, ney SCO would eventually create SVR5 which was different yet.
Chorus was working on what was to be SVR6 to compete with the OSF RI's
Mach4 based system, but I don't think that ever shipped.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20190911/a39b854d/attachment.html>

More information about the TUHS mailing list