The Unix Heritage Society mailing list
 help / color / Atom feed
From: Warner Losh <>
To: Clem Cole <>
Cc: The Eunuchs Hysterical Society <>
Subject: Re: [TUHS] PWB vs Unix/TS
Date: Tue, 10 Sep 2019 21:53:19 -0600
Message-ID: <> (raw)
In-Reply-To: <>

[-- Attachment #1: Type: text/plain, Size: 16060 bytes --]

On Tue, Sep 10, 2019 at 9:17 AM Clem Cole <> wrote:

> Below ... from memory - Someone like APS was a little closer to some of
> this than I was, so I might have a few things wrong.  I don't think so, but
> it's been quite a few beers
> On Mon, Sep 9, 2019 at 2:26 AM Warner Losh <> wrote:
>> OK. I'm totally confused, and I see contradictory information around. So
>> I thought I'd ask here.
>> PWB was started to support unix time sharing at bell labs in 1973 (around
>> V4 time).
> No...  that is not quite right.  PWB was Mashey's project to build an RJE
> system to front end SW development for the IBM systems, which AT&T had a
> number [IIRC Call Accounting and lot of the 'business' part of the Bell
> System was mainframe based].  I think Dick Haight was also involved.  I've
> forgotten the site there were at.  It might have been Holmdel or Whippany.
> But it was not MH or Summit.

"The Programmer's Workbench was started in 1973,[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...

PWB 1.0 was released just after V6 "based on" it.
> Well not so much "right after", but it was based on V6.  There are
> differences.  IIRC this was the first attempt at redoing how groups
> worked.  The biggest additions were an IBM RJE support, SCCS and a
> different set of backup utilities; including some disk to disk (volcpy) and
> the original binary formatted program for 9-tracks (cpio) to replace
> Ken's assembler based tp.

Yes. PWB had their own collection of add-ons. I believe, but can't find the
reference, that there were frequent imports of Research Unix into PWB as I
saw references to UNIX/TS and CB-UNIX never getting too far away from
Research Unix, so that's kinda speculative...  I imagine that SCCS was a
boon for keeping it all straight, but I've never actually used SCCS.

> SCCS was important and the RJE support was important because that was the
> system being used and it made a huge impression on AT&T staff.   A terminal
> to a UNIX box was way cheaper and to the IBM and people were so much more
> productive.
> Also remember, that tp(1) was written in assembler had been originally
> targeted to DECtape in a very early version of Research UNIX.  The DECtape
> nature is why the directory was on the front of the tape.  Ken moved it
> 9-track but used the same tape format.   I don't remember who wrote stp
> (super-tp - in C), [?? Harvard ?? it's on the Harvard tape and is how I got
> it].   But better peripheral support was really important in Mashey's
> setting.  In that world, the production computer system was being put in
> the raised floor computer rooms next to a mainframe and they had
> 'operators' so John and team started to think more about what was needed to
> admin the system.   IMHO: this was the first heavy use of shell scripts,
> while I saw them in MH, it was Mashey's guys that cause me personally to
> have an ah-ha moment about them.
> Interestingly enough, and I have talked to Bourne and Mashey about it,
> John's use of the V6 was definitely one of the groups that were asking for
> a new shell, which Bourne set out to solve; but that is not yet available.
> At some point (and here is where we need Steve Johnson, aps, and I wish
> the late Ted Kowalski) to fill in details I can not.  USG/Summit was
> chartered to "support UNIX for the Bell System."   As I understand it, the
> genesis for their system was a kernel from MH that was moving towards V7s
> but not there yet, the 'Typesetter C' and a bunch of other utilities that
> Summit had collected/developed, but which I do not know.  I think fsdb was
> around by that time. The new Bourne Shell and adb were being developed
> although how complete I'm not sure.
> But accept for the new shell and updated compiler, I remember the system
> 'felt' like V6 (Thompson shell) and thinking how much 'better' different v7
> (Bourne Shell was) when we finally got it. This earlier system is the one
> Ted brought to CMU in the fall 1977 (I think that is the right date) to
> update the V6 system were then running.  Anyway, Ted always referred to
> this as a UNIX/TS kernel.
> Another thing we did not have SCCS or the RJE stuff.  What I'm not sure
> of is if there was a formally release of what ted had.  So it may have
> been that TS had them and sent the release to Mashey, although I don't
> think there were such releases originally in TS.  FWIW: I believe that in
> our (CMU) case,Ted would just grab things as they appeared that he
> thought we needed at CMU and he pushed things back (like CMU's fsck as he
> found things we had that he thought we would like).  Interestingly
> enough, RJE and SCCS was needed for the IBM support and while Ted (and his
> undergrad roommate, Bill Joy) had worked on the MTS system on the IBM's at
> UMich, I always felt like Ted looked down on the mainframes (which was were
> I had also emerged but from CMU's TSS team).
> Also, Ted was a die-hard original cpio user and I liked the user
> interface to stp, which I remember was a difference/source of argument.
>  Tar did not yet exist. TS had some of the PWB tools like volcpy; but we
> were using DOS-11's similar but different backup scheme (I've forgotten
> the name of the format; but the tapes were boot-able, which volcpy tapes
> were not).
> FWIW:  cu(1) did not yet exist.  I wrote a program (that I tended to
> prefer in some ways for many years) called connect(1cmu) that did the same
> thing.  We used it to download images to the Microprocessors like the
> KIM-1.   It was originally written with the v6 portable C library, which is
> also what the original fsck used (it's what we had on v6).   Ted introduced
> me to what would become stdio and one of my first tasks was using it with
> connect(1cmu).  The other thing I remember about that program is it was the
> first time I wrote something that used two separate processes on a UNIX
> system that cooperated with each other and found it so much easier than on
> the PDP-10.
> Also, Dennis' stand-alone system for V7 was not yet available BTW.   If I
> think of anything else about that system I can remember, I'll send an update
> PWB 2.0 was released just after V7, also "based on it".
> I think the confusion is that TS and V7 were done sort of at the same time
> and while the folks working on them talked to each other, it has never been
> clear to me who was behind TS. For instance, I would learn that Bourne was
> the 'project leader' for Seventh, in that he was the person that collected
> everything for it.  I never heard of someone having the same role for TS,
> which is why I sometimes think it was a name inside of Summit, but never
> actually saw the light of day as a formal release.   I really am not sure
> and would love to learn more details (I wish Ted were still alive to fill
> us in).

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 including
the post by Dan DeJegar which I had trouble parsing the ins and outs of.

> As for V7 itself, Ken wrote tar(1) in response to cpio (preferring an
> ASCII based header, but 'threading' it like cpio did, but keeping the user
> interface that tp/stp had).  As I understand it, Dennis built up did the
> standalone toolkit stuff.  Ken changed groups and messed with the file system
> in the kernel.  Lots of new peripheral support, which is why he also
> added lseek() as disks overflowed a 16-bit integer for the seek position.
> Plus there were a number of other small changes between v6 and v7.  Some of
> this stuff from PWB and Summit went back to MH (fsck as an example), but
> not everything (like cpio/volcpy/SCCS).  I kind of think of the kernel and
> Typesetter C going from MH to Summit and the PWB teams.
> @Steve Johnson, I need your help here.... at some point PCC was created in
> MH (along with lint).  Didn't that start on V6 but was not complete until
> V7? And when did you move to Summit to lead the compiler effort there?  My
> impressions that was yet to happen, but I'm fuzzy on dates.
> Remember, there are a number of teams at BTL hacking on UNIX by then.
> Dale's team in Columbus, the crew in Indiana Hill,  folks at Western
> Electric (the Teletype folks ported the Ritchie C to the Z80 at some point
> for instance), *etc.*

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.

> Again, I don't remember the politics but like any big company, you can
> imagine it was not all that clean and crisp.   PWB 2.0 & 3.0 definitely
> picked up features from other UNIX systems.  As I remember, Dale's shared
> memory hacks would beget System V Shared Mem, Semaphores and IPC (they are
> different, but they started in Columbus).

This jives with other information that says the basis of system V share
memory, semaphores and ipc were derived from CB-Unix...

> The other thing I'm not clear on is when the PWB team was folded into USG (Unix
> Support Group) in Summit.  *I believe* that was after PWB 2.0 was
> released.  But at some point, Mashey's team and the USG got interwoven.
> I really don't know/remember many of those details as I watched them from
> the outside and only knew the results.  The key point is the PWB 2.0 would
> eventually be released as the internal, but official UNIX for the Bell
> System.   It was supposed to bring together the needed from the different
> labs; but it was not >>officially<< released *outside of the Bell System*
> (it was an internal product, remember at this point, AT&T is not allowed to
> have computer products, etc...)

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...

> So PWB 2.0 is basically internal, and a melding of V7, TS, PWB 1.0 and
> starting to take things from different labs with in BTL -- different from
> all of them but mostly a superset.
>> Later Unix TS 3.0 would become System III.
> No --I do not think this is a true statement... not sure where you got
> that, more in a minute

From the above recollection of Dan DeJAger...

> We know there was no System I or System II.
> Correct.
> But was there a Unix TS 1.0 and 2.0?
> This is where it gets sticky.  I don't think so.   TS was the original
> work by USG.   What I do not know is if it ever was 'packaged' as PWB had
> been. *I do not believe it was*.   I think a little like the way Research
> 'bled' out a little a time, pieces of TS made their way to MIT, CMU, *etc*.
> but never as a formal release.

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...

> And were they the same thing as PWB 1.0 and 2.0, or somehow just closely
>> related?
> See above... I'll explain how PWB 3.0 became System III in a minute.
>> And I've seen both Unix/TS and Unix TS. Is there a preferred spelling?
> Don't know.  I remember Ted always called it UNIX/TS all caps.
> The thing you left out is how PWB 3.0 became System III.
> Two important issues.  First with V7, AT&T (Al Arms) wrote the first
> binary system redistribution license.  The commercial folks were happy to
> have a redistribution license, but the terms were not what they really
> needed.  Much of the issue was that AT&T was not the computer hardware or
> software business and really did not understand the issues that the vendors
> had.  Professor Dennis Allison of Stanford, was consulting for almost all
> of us in the computer industry at the time (for those that don't know
> Dennis, around the same time he founded what is now called the Asilomar
> Microprocessor Workshop (check out:
> ).
> Dennis arranged for a big meeting at Ricki's Hyatt in Palo Alto and
> invited Al Arms and team, plus a representatives from his clients. I was
> the techie with a lawyer from Tektronix in the room (as I have said in
> other emails this it is only time I have been in a meeting with Bill
> Gates).  The folks I remember who were there: was Bill Munson and team from
> DEC; Fred Clegg and Team from HP; Bob MetCalfe from 3Com; Gates and the
> MSFT crew; folks from SCO and DG.   There were some others, about 10 firms
> in total; although I think if remember correctly, IBM was not among them
> [This is the meeting where Gates famously exclaimed: "*You guys don't get
> it.  The only thing that matters in the software industry is volume*."].
> BTW: The bits we were discussing was the upcoming release from USG, to be
> called PWB 3.0 and they were for the PDP-11 only (which was fine, that was
> what we all had been licensing already.  We could still use things from
> other places, because that is what those other places were all licensed to
> have -- all was good in UNIX-land).
> Thus began a series of negotiations for a new license agreement that would
> allow the HW vendors to better ship UNIX as a binary product:  FWIW: Gates
> wanted to pay $25/copy.   The DEC, HP and DG folks laughed.  $1K/copy was
> fine by them, since their HW was typically $50-150K/system.
> Either shortly after or maybe during the negotiations time, Judge Green
> ruled and AT&T got broken up.   One of the things that occured is that AT&T
> was now allowed to sell SW and more importantly their new 3B20 as a product
> (against IBM and DEC).  From a SW standpoint, AT&T Marketing did not like
> the 'Programmers' moniker, feeling that it would limit who they could sell
> too.  So they rebranded the new software product 'System III.'
> Note the printing of the manuals had already begun, which is why the cover
> of the manuals say System III, but the title pages say PWB 3.0.
> As other have said a few years later, another PWB release came out for the
> Bell System, *a.k.a.* PWB 4.0; but this was not licensed outside.
> At some point later, negotiations had restarted on yet another license
> with the System III licensees and AT&T.   By the time that completed, yet
> another release had been finished by USG.  The biggest change was the
> addition support for HW besides the PDP-11. In particular, the official USG
> support for the VAX and the 3B20.  What I forget, but I think in that
> license you had to declare a system type and most licensees picked the VAX.
> By the time of release and finalization of the license, AT&T Marketing
> which had already started the '*Consider it Standard*' campaign, called
> the new release "System V."
> AT&T Marketing would stay with System V moniker from then on and we know
> have SVR2, SVR3, SVR4, SVR5 in later years.

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).

>> Thanks for all your help with this topic and sorting things out. It's
>> been quite helpful for my talk in a few weeks.
>> Warner
>> P.S. Would it be inappropriate to solicit feedback on an early version of
>> my talk from this group?
> I would suggest sending a pointer to this group to the slides and ask for
> people to send you comments privately.

Works for me. Let me update based on this and Steve's email.

>> I'm sure they would be rather keener on catching errors in my
>> understanding of Unix history than just about any other forum...
> Indeed - happy to help.

I am so very grateful for the help.

> Clem

[-- Attachment #2: Type: text/html, Size: 31275 bytes --]

  parent reply index

Thread overview: 82+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-09-09  6:25 Warner Losh
2019-09-09  6:36 ` arnold
2019-09-10 15:16 ` Clem Cole
2019-09-11  0:28   ` Steve Johnson
2019-09-11  3:53   ` Warner Losh [this message]
2019-09-11 15:36     ` Clem Cole
2019-09-11 16:55       ` [TUHS] IBM Unix source licenses [was " Charles H Sauer
2019-09-12 19:31         ` Kevin Bowling
2019-09-12 20:59           ` Clem Cole
2019-09-12 21:09             ` [TUHS] IBM Unix source licenses - Series/1 NUXI Ronald Natalie
2019-09-12 21:31             ` [TUHS] IBM Unix source licenses [was Re: PWB vs Unix/TS Warner Losh
2019-09-12 22:30             ` jcs
2019-09-12 23:12               ` reed
2019-09-12 23:22                 ` jcs
2019-09-12 23:29               ` [TUHS] IBM Unix source licenses Warren Toomey
2019-09-13  7:06                 ` arnold
2019-09-13  8:30                 ` SPC
2019-09-14 18:29                   ` Warner Losh
2019-09-12 21:29           ` [TUHS] IBM Unix source licenses [was Re: PWB vs Unix/TS Charles H Sauer
2019-09-11 17:49       ` [TUHS] " Richard Salz
2019-09-11 17:52         ` ron
2019-09-11 21:44           ` Clem Cole
2019-09-11 18:11       ` Larry McVoy
2019-09-11 18:18         ` Richard Salz
2019-09-11 18:54           ` Larry McVoy
2019-09-11 21:05             ` Steve Johnson
2019-09-11 21:34             ` Steve Johnson
2019-09-11 21:57             ` Clem Cole
2019-09-11 22:50               ` Arthur Krewat
2019-09-11 21:59           ` Clem Cole
2019-09-11 21:50         ` Clem Cole
2019-09-11 22:49         ` Dave Horsfall
2019-09-12  3:43           ` [TUHS] SCCS Larry McVoy
2019-09-12  4:20             ` George Michaelson
2019-09-12  4:31               ` [TUHS] [SPAM] SCCS Larry McVoy
2019-09-12 13:44                 ` Tony Finch
2019-09-13  4:11                   ` Larry McVoy
2019-09-13  5:54                     ` Dave Horsfall
2019-09-13  8:00                       ` Peter Jeremy
2019-09-13 15:23                         ` Larry McVoy
2019-09-13 21:36                         ` Dave Horsfall
2019-09-12  4:28             ` [TUHS] SCCS Jon Forrest
2019-09-12  4:33               ` Larry McVoy
2019-09-12  6:12                 ` William Corcoran
2019-09-12 14:35                   ` Clem Cole
2019-09-13  5:22                 ` Dave Horsfall
2019-09-13  5:50                   ` Bakul Shah
2019-09-12 16:45               ` Eric Allman
2019-09-12 17:29                 ` Clem Cole
2019-09-12 17:47                   ` Warner Losh
2019-09-13  8:12                   ` emanuel stiebler
2019-09-13 21:11                     ` Steffen Nurpmeso
2019-09-13 21:17                       ` Larry McVoy
2019-09-13 21:48                         ` Bakul Shah
2019-09-13 23:12                           ` Steffen Nurpmeso
2019-09-13 23:03                         ` Steffen Nurpmeso
2019-09-14  1:55                           ` [TUHS] [SPAM] SCCS Larry McVoy
2019-09-16 17:23                             ` [TUHS] SCCS Steffen Nurpmeso
2019-09-16 20:31                               ` Larry McVoy
2019-09-17 17:57                                 ` Steffen Nurpmeso
2019-09-18  8:48                               ` Eric Allman
2019-09-18 17:33                                 ` Steffen Nurpmeso
2019-09-12 20:07             ` Nemo
2019-09-11 16:05   ` [TUHS] PWB vs Unix/TS Paul Winalski
2019-09-11 17:14     ` ron
2019-09-14  0:44   ` [TUHS] a book (was Re: PWB vs Unix/TS) reed
2019-09-14  2:53     ` Warner Losh
2019-09-15  2:18       ` Jon Steinhart
2019-09-15  2:39         ` Clem Cole
2019-09-15  3:24         ` Adam Thornton
2019-09-14 22:46     ` Clem cole
2019-09-15  0:58       ` Adam Thornton
2019-09-15  3:30         ` Eric Allman
2019-09-15  4:21           ` Larry McVoy
2019-09-15  5:17             ` Jon Steinhart
2019-09-15 20:14               ` Clem Cole
2019-09-15 20:21                 ` Jon Steinhart
2019-09-15 20:12           ` Clem Cole
2019-09-15 21:28             ` Dave Horsfall
2019-09-15 23:27               ` Clem cole
2019-09-15 23:45                 ` Richard Salz
2019-09-15  7:43     ` Andy Kosela

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \ \ \ \ \

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

The Unix Heritage Society mailing list

Archives are clonable: git clone --mirror

Example config snippet for mirrors

Newsgroup available over NNTP:

AGPL code for this site: git clone