The Unix Heritage Society mailing list
 help / color / mirror / Atom feed
* [TUHS] shared memory on Unix
@ 2017-02-01 14:18 Paul Ruizendaal
  2017-02-01 16:21 ` Mary Ann Horton
  0 siblings, 1 reply; 21+ messages in thread
From: Paul Ruizendaal @ 2017-02-01 14:18 UTC (permalink / raw)



The presence of some sort of shared memory facility in the
BBN V6 Unix kernel got me thinking about the origins of
shared memory on Unix.

I had a vague recollection that primordial versions were present
in either PWB or CB3, but a quick glance at the source indicates
that this is not correct.

What are the origins of shared memory on Unix, i.e. what came
before mmap() and SysV IPC? Was the BBN kernel the first to
implement such a facility on Unix?

Paul



^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 14:18 [TUHS] shared memory on Unix Paul Ruizendaal
@ 2017-02-01 16:21 ` Mary Ann Horton
  2017-02-01 17:18   ` Clem Cole
                     ` (2 more replies)
  0 siblings, 3 replies; 21+ messages in thread
From: Mary Ann Horton @ 2017-02-01 16:21 UTC (permalink / raw)


I*'m not sure what you mean by CB3, but these features (shared memory, 
semaphores, IPC) were added to CB-UNIX (Bell Labs, Columbus) precisely 
because they were needed in real time telco systems and not preset in 
the versions from New Jersey.  This would have been in the early 1980s.  
When I got there in 1981 I think CB-UNIX was already well established 
and had these features.  (These would show up, ironically, in /usr/ucb, 
which did not stand for Berkeley.)

     Mary Ann


On 02/01/2017 06:18 AM, Paul Ruizendaal wrote:
> The presence of some sort of shared memory facility in the
> BBN V6 Unix kernel got me thinking about the origins of
> shared memory on Unix.
>
> I had a vague recollection that primordial versions were present
> in either PWB or CB3, but a quick glance at the source indicates
> that this is not correct.
>
> What are the origins of shared memory on Unix, i.e. what came
> before mmap() and SysV IPC? Was the BBN kernel the first to
> implement such a facility on Unix?
>
> Paul
>



^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 16:21 ` Mary Ann Horton
@ 2017-02-01 17:18   ` Clem Cole
  2017-02-01 17:24   ` Joerg Schilling
  2017-02-01 23:11   ` Paul Ruizendaal
  2 siblings, 0 replies; 21+ messages in thread
From: Clem Cole @ 2017-02-01 17:18 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1907 bytes --]

​I do not remember the BBN share memory code, but the Columbus shared
memory and semaphore changes were certainly known in 1978 and 1979.   I
remember seeing a man page for them from one of the OYOC types - Phil Karn
maybe, but its possible it was tjk.   As quick scan of my paper archives,
did not turn anything up; and I do not remember any system at CMU that had
the code, only looking at a hard copy of the man pages.

My memory is that the API changed a little by the time they became the
System V API; as I remember thinking that the IPC was "new" when I first
saw it in a system that had all three.

On Wed, Feb 1, 2017 at 11:21 AM, Mary Ann Horton <mah at mhorton.net> wrote:

> I*'m not sure what you mean by CB3, but these features (shared memory,
> semaphores, IPC) were added to CB-UNIX (Bell Labs, Columbus) precisely
> because they were needed in real time telco systems and not preset in the
> versions from New Jersey.  This would have been in the early 1980s.  When I
> got there in 1981 I think CB-UNIX was already well established and had
> these features.  (These would show up, ironically, in /usr/ucb, which did
> not stand for Berkeley.)
>
>     Mary Ann
>
>
>
> On 02/01/2017 06:18 AM, Paul Ruizendaal wrote:
>
>> The presence of some sort of shared memory facility in the
>> BBN V6 Unix kernel got me thinking about the origins of
>> shared memory on Unix.
>>
>> I had a vague recollection that primordial versions were present
>> in either PWB or CB3, but a quick glance at the source indicates
>> that this is not correct.
>>
>> What are the origins of shared memory on Unix, i.e. what came
>> before mmap() and SysV IPC? Was the BBN kernel the first to
>> implement such a facility on Unix?
>>
>> Paul
>>
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/0dc4c0f7/attachment.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 16:21 ` Mary Ann Horton
  2017-02-01 17:18   ` Clem Cole
@ 2017-02-01 17:24   ` Joerg Schilling
  2017-02-01 17:39     ` Marc Rochkind
  2017-02-01 18:01     ` Clem Cole
  2017-02-01 23:11   ` Paul Ruizendaal
  2 siblings, 2 replies; 21+ messages in thread
From: Joerg Schilling @ 2017-02-01 17:24 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 851 bytes --]

Mary Ann Horton <mah at mhorton.net> wrote:

> I*'m not sure what you mean by CB3, but these features (shared memory, 
> semaphores, IPC) were added to CB-UNIX (Bell Labs, Columbus) precisely 
> because they were needed in real time telco systems and not preset in 
> the versions from New Jersey.  This would have been in the early 1980s.  
> When I got there in 1981 I think CB-UNIX was already well established 
> and had these features.  (These would show up, ironically, in /usr/ucb, 
> which did not stand for Berkeley.)

Wasn't shmget() and friends added vor SysV past 1982?

Jörg

-- 
 EMail:joerg at schily.net                  (home) Jörg Schilling D-13353 Berlin
       joerg.schilling at fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/
 URL:  http://cdrecord.org/private/ http://sourceforge.net/projects/schilytools/files/


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 17:24   ` Joerg Schilling
@ 2017-02-01 17:39     ` Marc Rochkind
  2017-02-01 18:04       ` Clem Cole
  2017-02-01 18:01     ` Clem Cole
  1 sibling, 1 reply; 21+ messages in thread
From: Marc Rochkind @ 2017-02-01 17:39 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1971 bytes --]

The so-called Columbus shared memory feature was in their system in the
mid-1970s, along with a few other things such as semaphores and
inter-process messages. I seem to recall the acronym MAUG, but I may have a
letter or two wrong. Something like Multi Access User ____. The much later
System V features had a completely different API.

Hey, Doug, do you remember this? In the early 1970s, there were a couple of
UNIX meetings at Murray Hill, at which various Bell Labs groups presented
on what they were doing with UNIX, and a group, perhaps Columbus, said that
UNIX wasn't capable of doing what they wanted, so they had modified it. You
asked the question, "Why are you using UNIX?"

To my knowledge, having witnessed another decade or so of groups trying to
bend UNIX to their will, it was the last time the question was asked.

--Marc

On Wed, Feb 1, 2017 at 10:24 AM, Joerg Schilling <schily at schily.net> wrote:

> Mary Ann Horton <mah at mhorton.net> wrote:
>
> > I*'m not sure what you mean by CB3, but these features (shared memory,
> > semaphores, IPC) were added to CB-UNIX (Bell Labs, Columbus) precisely
> > because they were needed in real time telco systems and not preset in
> > the versions from New Jersey.  This would have been in the early 1980s.
> > When I got there in 1981 I think CB-UNIX was already well established
> > and had these features.  (These would show up, ironically, in /usr/ucb,
> > which did not stand for Berkeley.)
>
> Wasn't shmget() and friends added vor SysV past 1982?
>
> Jörg
>
> --
>  EMail:joerg at schily.net                  (home) Jörg Schilling D-13353
> Berlin
>        joerg.schilling at fokus.fraunhofer.de (work) Blog:
> http://schily.blogspot.com/
>  URL:  http://cdrecord.org/private/ http://sourceforge.net/
> projects/schilytools/files/
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/e4191bac/attachment.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 17:24   ` Joerg Schilling
  2017-02-01 17:39     ` Marc Rochkind
@ 2017-02-01 18:01     ` Clem Cole
  2017-02-01 18:07       ` Marc Rochkind
                         ` (2 more replies)
  1 sibling, 3 replies; 21+ messages in thread
From: Clem Cole @ 2017-02-01 18:01 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 1917 bytes --]

On Wed, Feb 1, 2017 at 12:24 PM, Joerg Schilling <schily at schily.net> wrote:

> Wasn't shmget() and friends added vor SysV past 1982?


​AT&T Unix naming get's weird as they hire marketing people that don't
quite get it.

V6 -> PWB [1.0 ~77] ---|
   |                           |
   +  UNIX/TS[~79] --      +​ PWB 2.0 [~79]  ----- PWB 3.0[~80]  <--
internal name of release


The "UNIX Support Group" - aka Summit - is supposed to be creating UNIX
flavors for the different labs and operating companies and Research is to
go back to doing research.  Thus PWB 3.0 is supposed to start to be a
"superset" of the features added by the different labs, Columbus, IH, *etc*...
  But it took a few spins before all the different hacks, additions were
agreed too and added.   There was much fighting inside of BTL as we see
outside.

IIRC an unreleased version of PWB 4.0 had the Columbus features in it as
Horton points out.

Note that AT&T Marketing renames PWB 3.0 -- System III thinking that
"Programmer's Workbench" would be a bad name to sell against IBM, and this
it the first non-research system for License outside of the the labs.  If
you look at the documentation set, et al - it all says PWB 3.0 on the cover
and throughout   Also, the BSD vs AT&T wars basically start around this
time....

Roll the clock forward and here is an new problem the PWB 4.0 moniker was
used internally,  but AT&T marketing want to get rid of the PWB term - so
the decree comes down the next release is to be called System V.

Certainly by this point, the Columbus changes had been folded into the main
line kernel in Summit by then.   But as I said, my memory is what made it
into SystemV and what was in CB-UNIX were similar but a little different.

Clem
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/923e2e70/attachment-0001.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 17:39     ` Marc Rochkind
@ 2017-02-01 18:04       ` Clem Cole
  0 siblings, 0 replies; 21+ messages in thread
From: Clem Cole @ 2017-02-01 18:04 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 649 bytes --]

On Wed, Feb 1, 2017 at 12:39 PM, Marc Rochkind <rochkind at basepath.com>
wrote:

> The so-called Columbus shared memory feature was in their system in the
> mid-1970s, along with a few other things such as semaphores and
> inter-process messages. I seem to recall the acronym MAUG, but I may have a
> letter or two wrong. Something like Multi Access User ____. The much later
> System V features had a completely different API.
>

​This is in sync with my memory of the time.​
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/5344832e/attachment.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 18:01     ` Clem Cole
@ 2017-02-01 18:07       ` Marc Rochkind
  2017-02-01 18:15       ` Joerg Schilling
  2017-02-01 18:33       ` arnold
  2 siblings, 0 replies; 21+ messages in thread
From: Marc Rochkind @ 2017-02-01 18:07 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 2189 bytes --]

OK, just remembered. That acronym for the Columbus shared memory was MAUS,
pronounced "mouse". Multi Access User Space.

--Marc

On Wed, Feb 1, 2017 at 11:01 AM, Clem Cole <clemc at ccc.com> wrote:

>
> On Wed, Feb 1, 2017 at 12:24 PM, Joerg Schilling <schily at schily.net>
> wrote:
>
>> Wasn't shmget() and friends added vor SysV past 1982?
>
>
> ​AT&T Unix naming get's weird as they hire marketing people that don't
> quite get it.
>
> V6 -> PWB [1.0 ~77] ---|
>    |                           |
>    +  UNIX/TS[~79] --      +​ PWB 2.0 [~79]  ----- PWB 3.0[~80]  <--
> internal name of release
>
>
> The "UNIX Support Group" - aka Summit - is supposed to be creating UNIX
> flavors for the different labs and operating companies and Research is to
> go back to doing research.  Thus PWB 3.0 is supposed to start to be a
> "superset" of the features added by the different labs, Columbus, IH,
> *etc*...   But it took a few spins before all the different hacks,
> additions were agreed too and added.   There was much fighting inside of
> BTL as we see outside.
>
> IIRC an unreleased version of PWB 4.0 had the Columbus features in it as
> Horton points out.
>
> Note that AT&T Marketing renames PWB 3.0 -- System III thinking that
> "Programmer's Workbench" would be a bad name to sell against IBM, and this
> it the first non-research system for License outside of the the labs.  If
> you look at the documentation set, et al - it all says PWB 3.0 on the cover
> and throughout   Also, the BSD vs AT&T wars basically start around this
> time....
>
> Roll the clock forward and here is an new problem the PWB 4.0 moniker was
> used internally,  but AT&T marketing want to get rid of the PWB term - so
> the decree comes down the next release is to be called System V.
>
> Certainly by this point, the Columbus changes had been folded into the
> main line kernel in Summit by then.   But as I said, my memory is what made
> it into SystemV and what was in CB-UNIX were similar but a little different.
>
> Clem
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/25e84346/attachment.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 18:01     ` Clem Cole
  2017-02-01 18:07       ` Marc Rochkind
@ 2017-02-01 18:15       ` Joerg Schilling
  2017-02-01 18:32         ` Marc Rochkind
  2017-02-01 18:33       ` arnold
  2 siblings, 1 reply; 21+ messages in thread
From: Joerg Schilling @ 2017-02-01 18:15 UTC (permalink / raw)


Clem Cole <clemc at ccc.com> wrote:

> On Wed, Feb 1, 2017 at 12:24 PM, Joerg Schilling <schily at schily.net> wrote:
>
> > Wasn't shmget() and friends added vor SysV past 1982?
>
>
> ???AT&T Unix naming get's weird as they hire marketing people that don't
> quite get it.
>
> V6 -> PWB [1.0 ~77] ---|
>    |                           |
>    +  UNIX/TS[~79] --      +??? PWB 2.0 [~79]  ----- PWB 3.0[~80]  <--
> internal name of release
>
>
> The "UNIX Support Group" - aka Summit - is supposed to be creating UNIX
> flavors for the different labs and operating companies and Research is to
> go back to doing research.  Thus PWB 3.0 is supposed to start to be a

BTW: Is this:

/*--------------------------------------------------------------------------*/
PY-77-05(PWB PIB)            2/22/77            PY-77-05(PWB PIB)


TO:

     All BISP Programmer's Workbench (PWB) Users

SUBJECT:

     Release 4.0 of SCCS/PWB
/*--------------------------------------------------------------------------*/

Release 4.0 of SCCS or release 4.0 of PWB?



^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 18:15       ` Joerg Schilling
@ 2017-02-01 18:32         ` Marc Rochkind
  2017-02-01 18:35           ` Joerg Schilling
  0 siblings, 1 reply; 21+ messages in thread
From: Marc Rochkind @ 2017-02-01 18:32 UTC (permalink / raw)


First, to explain a bit, BISP stood for Business Information System
Programs (or something like that), and referred to a part of Bell Labs at
Piscataway that was originally staffed by Telephone Company personnel, for
the purpose of writing software for use by the Companies. The idea is that
they would send people on temporary assignment, they would code up the
programs, and then return home, job done.

When I got to Bell Labs, in 1970 the operation was alive, but by 1972 it
was obvious that it was a failure, so the organization was grafted onto
Bell Labs (department numbers 9xxx), the temporaries were sent home, and
Bell Labs people were moved in or hired. That gave me a great opportunity,
so I transferred there. Vic Vyssotsky, a real blue-blood Bell Labs guy,
went over to run it. My department head was Rudd Canaday, another genuine
Bell Labs guy.

That's where I did SCCS.

I'm almost sure that SCCS/PWB refers to SCCS, not to the OS. By the time of
this memo (1977) I was long-gone from SCCS, and was working under Rudd on a
new system to produce telephone directories.

--Marc

On Wed, Feb 1, 2017 at 11:15 AM, Joerg Schilling <schily at schily.net> wrote:

> Clem Cole <clemc at ccc.com> wrote:
>
> > On Wed, Feb 1, 2017 at 12:24 PM, Joerg Schilling <schily at schily.net>
> wrote:
> >
> > > Wasn't shmget() and friends added vor SysV past 1982?
> >
> >
> > ???AT&T Unix naming get's weird as they hire marketing people that don't
> > quite get it.
> >
> > V6 -> PWB [1.0 ~77] ---|
> >    |                           |
> >    +  UNIX/TS[~79] --      +??? PWB 2.0 [~79]  ----- PWB 3.0[~80]  <--
> > internal name of release
> >
> >
> > The "UNIX Support Group" - aka Summit - is supposed to be creating UNIX
> > flavors for the different labs and operating companies and Research is to
> > go back to doing research.  Thus PWB 3.0 is supposed to start to be a
>
> BTW: Is this:
>
> /*----------------------------------------------------------
> ----------------*/
> PY-77-05(PWB PIB)            2/22/77            PY-77-05(PWB PIB)
>
>
> TO:
>
>      All BISP Programmer's Workbench (PWB) Users
>
> SUBJECT:
>
>      Release 4.0 of SCCS/PWB
> /*----------------------------------------------------------
> ----------------*/
>
> Release 4.0 of SCCS or release 4.0 of PWB?
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/03edc32f/attachment.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 18:01     ` Clem Cole
  2017-02-01 18:07       ` Marc Rochkind
  2017-02-01 18:15       ` Joerg Schilling
@ 2017-02-01 18:33       ` arnold
  2017-02-01 19:11         ` Steve Johnson
  2017-02-01 19:30         ` Clem Cole
  2 siblings, 2 replies; 21+ messages in thread
From: arnold @ 2017-02-01 18:33 UTC (permalink / raw)


Clem Cole <clemc at ccc.com> wrote:

> Note that AT&T Marketing renames PWB 3.0 -- System III thinking that
> "Programmer's Workbench" would be a bad name to sell against IBM, and this
> it the first non-research system for License outside of the the labs.  If
> you look at the documentation set, et al - it all says PWB 3.0 on the cover
> and throughout   Also, the BSD vs AT&T wars basically start around this
> time....
>
> Roll the clock forward and here is an new problem the PWB 4.0 moniker was
> used internally,  but AT&T marketing want to get rid of the PWB term - so
> the decree comes down the next release is to be called System V.

Sort of. I did some contract work for Southern Bell circa 1983. They
were still part of the Bell System then. I worked on a PDP-11 running
Unix 4.0. At the time, the policy was to release externally one version
behind what was being run internally, so System III was released to the
world while the Bell System was using Unix 4.0.  I still have the manual;
I'm pretty sure "PWB" and "Programmer's Workbench" are not on the cover,
it was just called "UNIX".

As UNIX 5.0 was approaching, someone decided that to be one release
behind on the outside was dumb, thus the jump from System III to System V.

The doc I have describes UNIX as an operating system for the PDP-11,
the VAX 11/780 *and* the IBM S/370 series of systems and the source
code directory had the machine dependent bits for the IBM. Too bad
that stuff never made it out.

It's too bad that all I have is just the paper, but that's all I
could get.

That was a fun job, I learned a lot. Over lunch every day I read a few
more pages of the manual, basically reading it from cover to cover
by the time I was done. What a great way to learn the system!

Arnold


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 18:32         ` Marc Rochkind
@ 2017-02-01 18:35           ` Joerg Schilling
  0 siblings, 0 replies; 21+ messages in thread
From: Joerg Schilling @ 2017-02-01 18:35 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 639 bytes --]

Marc Rochkind <rochkind at basepath.com> wrote:

> I'm almost sure that SCCS/PWB refers to SCCS, not to the OS. By the time of
> this memo (1977) I was long-gone from SCCS, and was working under Rudd on a
> new system to produce telephone directories.

Interesting.... does this mean that you did not do the rework that defined the 
new ASCII based history file format?

Jörg

-- 
 EMail:joerg at schily.net                  (home) Jörg Schilling D-13353 Berlin
       joerg.schilling at fokus.fraunhofer.de (work) Blog: http://schily.blogspot.com/
 URL:  http://cdrecord.org/private/ http://sourceforge.net/projects/schilytools/files/


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 18:33       ` arnold
@ 2017-02-01 19:11         ` Steve Johnson
  2017-02-01 19:24           ` Marc Rochkind
  2017-02-01 19:30         ` Clem Cole
  1 sibling, 1 reply; 21+ messages in thread
From: Steve Johnson @ 2017-02-01 19:11 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 4469 bytes --]

I can't speak for the dates, but Ken did a hack to the OS to interface
with his Chess machine.  Recall that all the I/O on the PDP-11 was
memory mapped, so as I recall he simply mapped a piece of kernel
memory into user space.  Was never privvy to the details.

I do remember a conversation with Dennis about semaphores, though. 
He mentioned that no less than five groups inside of Bell Labs had
hacked semaphores into the kernel.  Each group did it differently. 
He thought they were all a bad idea -- his argument was, "what do you
do if a process sets a semaphore and then dies?  It's pretty clear
that either releasing the semaphore or leaving it set would be
catastrophic in some cases."  

(Of course there were other similar problems, such as a process
closing its files and dying, and then the kernel discovering that the
disc was full.   Luckily, these days, the disc rarely gets full...)

Also, a comment from my own experience with AT&T marketing.  When I
was responsible for the System V languages in Summit, I was told that
a marketing group was staffed and that there was a person in charge of
marketing the language products (at the time, C, Cfront (becoming
C++), Fortran, Pascal, and Ada).  I set up a monthly meeting with
this person.  The meetings went on for over a year, but _I NEVER MET
WITH THE SAME PERSON TWICE!_   It seemed that the only thing the
marketing group knew how to do was reorganize the marketing group...

At the time, a lot of people buying VAXes were running VMS because its
FORTRAN was far better than UNIX F77 -- in particular, it had an
optimizer.  I started a project to build an optimizer for FORTRAN,
and staffed it with several very good people.  Every six weeks there
would be an attempt to kill the project.  Each time I'd repeat the
argument for doing it, and it would be saved.  We almost started to
put these attempts to kill it on the calendar.  At no time did I get
any feedback, positive or negative, from AT&T marketing.   When I
left AT&T in early 1986, the optimizer, by now almost complete, was
immediately killed again.    I was later told by one of my former
team members that it was revived several months later and finally made
it out.  And that the next year it was the best-selling add-on to
System V.

Steve

----- Original Message -----
From: arnold@skeeve.com
To:<schily at schily.net>, <clemc at ccc.com>
Cc:<tuhs at minnie.tuhs.org>
Sent:Wed, 01 Feb 2017 11:33:05 -0700
Subject:Re: [TUHS] shared memory on Unix

 Clem Cole <clemc at ccc.com> wrote:

 > Note that AT&T Marketing renames PWB 3.0 -- System III thinking
that
 > "Programmer's Workbench" would be a bad name to sell against IBM,
and this
 > it the first non-research system for License outside of the the
labs. If
 > you look at the documentation set, et al - it all says PWB 3.0 on
the cover
 > and throughout Also, the BSD vs AT&T wars basically start around
this
 > time....
 >
 > Roll the clock forward and here is an new problem the PWB 4.0
moniker was
 > used internally, but AT&T marketing want to get rid of the PWB term
- so
 > the decree comes down the next release is to be called System V.

 Sort of. I did some contract work for Southern Bell circa 1983. They
 were still part of the Bell System then. I worked on a PDP-11 running
 Unix 4.0. At the time, the policy was to release externally one
version
 behind what was being run internally, so System III was released to
the
 world while the Bell System was using Unix 4.0. I still have the
manual;
 I'm pretty sure "PWB" and "Programmer's Workbench" are not on the
cover,
 it was just called "UNIX".

 As UNIX 5.0 was approaching, someone decided that to be one release
 behind on the outside was dumb, thus the jump from System III to
System V.

 The doc I have describes UNIX as an operating system for the PDP-11,
 the VAX 11/780 *and* the IBM S/370 series of systems and the source
 code directory had the machine dependent bits for the IBM. Too bad
 that stuff never made it out.

 It's too bad that all I have is just the paper, but that's all I
 could get.

 That was a fun job, I learned a lot. Over lunch every day I read a
few
 more pages of the manual, basically reading it from cover to cover
 by the time I was done. What a great way to learn the system!

 Arnold

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/e9f5bd4f/attachment.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 19:11         ` Steve Johnson
@ 2017-02-01 19:24           ` Marc Rochkind
  0 siblings, 0 replies; 21+ messages in thread
From: Marc Rochkind @ 2017-02-01 19:24 UTC (permalink / raw)


@Joerg: "Interesting.... does this mean that you did not do the rework that
defined the new ASCII based history file format?"

I'm sure it does, as I have no idea what that is/was. I stopped working on
SCCS around 1975 or 1976, about when the IEEE paper was presented.

--Marc

On Wed, Feb 1, 2017 at 12:11 PM, Steve Johnson <scj at yaccman.com> wrote:

> I can't speak for the dates, but Ken did a hack to the OS to interface
> with his Chess machine.  Recall that all the I/O on the PDP-11 was memory
> mapped, so as I recall he simply mapped a piece of kernel memory into user
> space.  Was never privvy to the details.
>
> I do remember a conversation with Dennis about semaphores, though.  He
> mentioned that no less than five groups inside of Bell Labs had hacked
> semaphores into the kernel.  Each group did it differently.  He thought
> they were all a bad idea -- his argument was, "what do you do if a process
> sets a semaphore and then dies?  It's pretty clear that either releasing
> the semaphore or leaving it set would be catastrophic in some cases."
>
> (Of course there were other similar problems, such as a process closing
> its files and dying, and then the kernel discovering that the disc was
> full.   Luckily, these days, the disc rarely gets full...)
>
> Also, a comment from my own experience with AT&T marketing.  When I was
> responsible for the System V languages in Summit, I was told that a
> marketing group was staffed and that there was a person in charge of
> marketing the language products (at the time, C, Cfront (becoming C++),
> Fortran, Pascal, and Ada).  I set up a monthly meeting with this person.
> The meetings went on for over a year, but *I never met with the same
> person twice!*   It seemed that the only thing the marketing group knew
> how to do was reorganize the marketing group...
>
> At the time, a lot of people buying VAXes were running VMS because its
> FORTRAN was far better than UNIX F77 -- in particular, it had an
> optimizer.  I started a project to build an optimizer for FORTRAN, and
> staffed it with several very good people.  Every six weeks there would be
> an attempt to kill the project.  Each time I'd repeat the argument for
> doing it, and it would be saved.  We almost started to put these attempts
> to kill it on the calendar.  At no time did I get any feedback, positive or
> negative, from AT&T marketing.   When I left AT&T in early 1986, the
> optimizer, by now almost complete, was immediately killed again.    I was
> later told by one of my former team members that it was revived several
> months later and finally made it out.  And that the next year it was the
> best-selling add-on to System V.
>
> Steve
>
>
> ----- Original Message -----
> From:
> arnold at skeeve.com
>
> To:
> <schily at schily.net>, <clemc at ccc.com>
> Cc:
> <tuhs at minnie.tuhs.org>
> Sent:
> Wed, 01 Feb 2017 11:33:05 -0700
> Subject:
> Re: [TUHS] shared memory on Unix
>
>
>
> Clem Cole <clemc at ccc.com> wrote:
>
> > Note that AT&T Marketing renames PWB 3.0 -- System III thinking that
> > "Programmer's Workbench" would be a bad name to sell against IBM, and
> this
> > it the first non-research system for License outside of the the labs. If
> > you look at the documentation set, et al - it all says PWB 3.0 on the
> cover
> > and throughout Also, the BSD vs AT&T wars basically start around this
> > time....
> >
> > Roll the clock forward and here is an new problem the PWB 4.0 moniker was
> > used internally, but AT&T marketing want to get rid of the PWB term - so
> > the decree comes down the next release is to be called System V.
>
> Sort of. I did some contract work for Southern Bell circa 1983. They
> were still part of the Bell System then. I worked on a PDP-11 running
> Unix 4.0. At the time, the policy was to release externally one version
> behind what was being run internally, so System III was released to the
> world while the Bell System was using Unix 4.0. I still have the manual;
> I'm pretty sure "PWB" and "Programmer's Workbench" are not on the cover,
> it was just called "UNIX".
>
> As UNIX 5.0 was approaching, someone decided that to be one release
> behind on the outside was dumb, thus the jump from System III to System V.
>
> The doc I have describes UNIX as an operating system for the PDP-11,
> the VAX 11/780 *and* the IBM S/370 series of systems and the source
> code directory had the machine dependent bits for the IBM. Too bad
> that stuff never made it out.
>
> It's too bad that all I have is just the paper, but that's all I
> could get.
>
> That was a fun job, I learned a lot. Over lunch every day I read a few
> more pages of the manual, basically reading it from cover to cover
> by the time I was done. What a great way to learn the system!
>
> Arnold
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/d729c5ca/attachment-0001.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 18:33       ` arnold
  2017-02-01 19:11         ` Steve Johnson
@ 2017-02-01 19:30         ` Clem Cole
  2017-02-02  0:25           ` Nick Downing
  1 sibling, 1 reply; 21+ messages in thread
From: Clem Cole @ 2017-02-01 19:30 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 3235 bytes --]

On Wed, Feb 1, 2017 at 1:33 PM, <arnold at skeeve.com> wrote:

> ​..
> At the time, the policy was to release externally one version
> behind what was being run internally, so System III was released to the
> world while the Bell System was using Unix 4.0.  I still have the manual;
> I'm pretty sure "PWB" and "Programmer's Workbench" are not on the cover,
> ​ ​
> it was just called "UNIX".
>
​Could be.... the "System III" manual cover I have says PWB 3.0​

I never had a 4.0 doc, although I saw it at some point.




>
> As UNIX 5.0 was approaching, someone decided that to be one release
> behind on the outside was dumb, thus the jump from System III to System
> ​​
> V.
>

​Making the outside and inside system in sync makes sense and I think I
remember some of that.   But the name was definitely forced by the
Marketing types in NC.  I somewhere have a memo that they sent to all
licenses about the term UNIX and how it could be used and what could be
called same.    It was clear that was all part of the UNIX wars and they
were trying to make System xxx have some sort of halo.


As a side note, what is funny is when it all went down, I remember having
an argument with some of the Masscomp (and ex-DEC) marketing types.   The
geeks (like me) just could not get through to them that what mattered was
how it worked and what was inside (which BSD was pretty much superior
technology by most accounts).   It was not that Sys III/V was bad, it was
just unadorned and claiming it was cool and trying to give it a cool name
was not going to make it cool.​

Around this time we came up with the Universes hack, so you can have it
both ways; but our kernel was more BSD that AT&T.


As I said, funny, because a few years later with Stellar, the same group of
people would >>start<< with a System V kernel and fold in BSD interfaces as
needed.  We wrote our own FS (which was UFS-externally - i.e. BSD user api)
but kernel insides completely new (extent based, more like VMS).

We had decided that by then the AT&T code base was *cleaner to make scale
on a multiprocessor*, as we had already lived the BSD MP nightmare once
with the Masscomp kernel.     But the key was that even thought we used
System V, we made darned sure the user mode API's (such as sockets, mmap,
signals, namespaces etc) were the BSD APIs and that the BSD user code from
UNIX and that VMS/FORTRAN sources would pretty much compile out of the box.

We were at that point targeting Sun, Apollo & VMS customers so we knew it
name meant nothing, it was all about how easy it was going to be for the
code recompile and "just work".

Back to the main point, AT&T Marketing was still chasing IBM at this time.
It was amazing to many of us watching the ship sink.   They really did not
see where the future was and that they owned the SW technology that was
going to dive it, but it was going to be sold to people other than whom IBM
had traditionally sold.  They also made the fatal mistake of trying to grip
it too tight and in doing so, it slipped through their fingers.

Clem
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/4dd34ee2/attachment.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 16:21 ` Mary Ann Horton
  2017-02-01 17:18   ` Clem Cole
  2017-02-01 17:24   ` Joerg Schilling
@ 2017-02-01 23:11   ` Paul Ruizendaal
  2017-02-02  1:10     ` Clem Cole
  2 siblings, 1 reply; 21+ messages in thread
From: Paul Ruizendaal @ 2017-02-01 23:11 UTC (permalink / raw)


Many thanks to all for that helpful info!

OK, so my vague recollection was more correct than my quick code
inspection...

With CB3 I meant CB Unix 3.0. I had a look at the "pdp11v" code
in the Unix Tree archive and it has a system call "maus". Its implementation
is here:
http://minnie.tuhs.org/cgi-bin/utree.pl?file=pdp11v/usr/src/uts/pdp11/os/maus.c

There is also a CB Unix 2.1 manual and source code listing in the archive.
The manual page for maus says it stands for "multiple access user space"
(http://www.tuhs.org/Archive/PDP-11/Distributions/other/CB_Unix/cbunix_man2_02.pdf)
At first glance 'maus' looks a bit like mmap.

I did not find a print of the maus implementation yet in the source print, but
I haven't exaustively searched yet (it is mentioned in the index, so it
probably is there somewhere).

In any case, the man page for maus is from November 1979, so it goes back at
least as far as that. When was CB Unix 1.0 put together?

--

It will be interesting to see how the BBN and CB approaches compare.

Noel wrote: "Yes, there are two module in 'ken', map_page.c and set_lcba.c
(I was unable to work out what 'LCBA' stood for) which seem to do something with
mapping."

How about "Local Common Block Access"? :^)

Paul


> The so-called Columbus shared memory feature was in their system in the
> mid-1970s, along with a few other things such as semaphores and
> inter-process messages. I seem to recall the acronym MAUG, but I may have a
> letter or two wrong. Something like Multi Access User ____. The much later
> System V features had a completely different API.
> 
> Hey, Doug, do you remember this? In the early 1970s, there were a couple of
> UNIX meetings at Murray Hill, at which various Bell Labs groups presented
> on what they were doing with UNIX, and a group, perhaps Columbus, said that
> UNIX wasn't capable of doing what they wanted, so they had modified it. You
> asked the question, "Why are you using UNIX?"
> 
> To my knowledge, having witnessed another decade or so of groups trying to
> bend UNIX to their will, it was the last time the question was asked.
> 
> --Marc
> 
> 
> > Mary Ann Horton <mah at mhorton.net
> > wrote:
> 
> > > I*'m not sure what you mean by CB3, but these features (shared memory,
> > > semaphores, IPC) were added to CB-UNIX (Bell Labs, Columbus) precisely
> > > because they were needed in real time telco systems and not preset in
> > > the versions from New Jersey.  This would have been in the early 1980s.
> > > When I got there in 1981 I think CB-UNIX was already well established
> > > and had these features.  (These would show up, ironically, in /usr/ucb,
> > > which did not stand for Berkeley.)


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 19:30         ` Clem Cole
@ 2017-02-02  0:25           ` Nick Downing
  0 siblings, 0 replies; 21+ messages in thread
From: Nick Downing @ 2017-02-02  0:25 UTC (permalink / raw)


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain, Size: 3673 bytes --]

A very incisive post Clem and to everyone generally I am fascinated to hear
about PWB, Unix 3/4/5 history, System V, choice of codebases, featuresets
and APIs. The thread made a good read on a long boring drive and I'm not
even finished reading yet. :) Nick

On 02/02/2017 6:31 AM, "Clem Cole" <clemc at ccc.com> wrote:

>
> On Wed, Feb 1, 2017 at 1:33 PM, <arnold at skeeve.com> wrote:
>
>> ​..
>> At the time, the policy was to release externally one version
>> behind what was being run internally, so System III was released to the
>> world while the Bell System was using Unix 4.0.  I still have the manual;
>> I'm pretty sure "PWB" and "Programmer's Workbench" are not on the cover,
>> ​ ​
>> it was just called "UNIX".
>>
> ​Could be.... the "System III" manual cover I have says PWB 3.0​
>
> I never had a 4.0 doc, although I saw it at some point.
>
>
>
>
>>
>> As UNIX 5.0 was approaching, someone decided that to be one release
>> behind on the outside was dumb, thus the jump from System III to System
>> ​​
>> V.
>>
>
> ​Making the outside and inside system in sync makes sense and I think I
> remember some of that.   But the name was definitely forced by the
> Marketing types in NC.  I somewhere have a memo that they sent to all
> licenses about the term UNIX and how it could be used and what could be
> called same.    It was clear that was all part of the UNIX wars and they
> were trying to make System xxx have some sort of halo.
>
>
> As a side note, what is funny is when it all went down, I remember having
> an argument with some of the Masscomp (and ex-DEC) marketing types.   The
> geeks (like me) just could not get through to them that what mattered was
> how it worked and what was inside (which BSD was pretty much superior
> technology by most accounts).   It was not that Sys III/V was bad, it was
> just unadorned and claiming it was cool and trying to give it a cool name
> was not going to make it cool.​
>
> Around this time we came up with the Universes hack, so you can have it
> both ways; but our kernel was more BSD that AT&T.
>
>
> As I said, funny, because a few years later with Stellar, the same group
> of people would >>start<< with a System V kernel and fold in BSD interfaces
> as needed.  We wrote our own FS (which was UFS-externally - i.e. BSD user
> api) but kernel insides completely new (extent based, more like VMS).
>
> We had decided that by then the AT&T code base was *cleaner to make scale
> on a multiprocessor*, as we had already lived the BSD MP nightmare once
> with the Masscomp kernel.     But the key was that even thought we used
> System V, we made darned sure the user mode API's (such as sockets, mmap,
> signals, namespaces etc) were the BSD APIs and that the BSD user code from
> UNIX and that VMS/FORTRAN sources would pretty much compile out of the box.
>
> We were at that point targeting Sun, Apollo & VMS customers so we knew it
> name meant nothing, it was all about how easy it was going to be for the
> code recompile and "just work".
>
> Back to the main point, AT&T Marketing was still chasing IBM at this
> time.  It was amazing to many of us watching the ship sink.   They really
> did not see where the future was and that they owned the SW technology that
> was going to dive it, but it was going to be sold to people other than whom
> IBM had traditionally sold.  They also made the fatal mistake of trying to
> grip it too tight and in doing so, it slipped through their fingers.
>
> Clem
>
>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170202/e7348b64/attachment.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 23:11   ` Paul Ruizendaal
@ 2017-02-02  1:10     ` Clem Cole
  0 siblings, 0 replies; 21+ messages in thread
From: Clem Cole @ 2017-02-02  1:10 UTC (permalink / raw)


On Wed, Feb 1, 2017 at 6:11 PM, Paul Ruizendaal <pnr at planet.nl> wrote:

> In any case, the man page for maus is from November 1979, so it goes back
> at
> least as far as that. When was CB Unix 1.0 put together?
>

That man page is much more like I remember, not the system V stuff of a few
years later.   Since, I would've seen it no later than fall 1978, so I
would date it as being available most likely in the 77-78 timeframe.

Clem
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/38f42744/attachment.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 19:44 Noel Chiappa
  2017-02-01 19:55 ` ron minnich
@ 2017-02-01 21:40 ` Larry McVoy
  1 sibling, 0 replies; 21+ messages in thread
From: Larry McVoy @ 2017-02-01 21:40 UTC (permalink / raw)


On Wed, Feb 01, 2017 at 02:44:34PM -0500, Noel Chiappa wrote:
>     > From: "Steve Johnson"
> 
>     > The meetings went on for over a year, but _I NEVER MET WITH THE SAME
>     > PERSON TWICE!_ It seemed that the only thing the marketing group knew
>     > how to do was reorganize the marketing group...
> 
> Shades of SI:Electric-Marketing (I _think_ that was its name) on the Symbolics
> LISP Machine...
> 
> (For those who never had the joy of seeing this, it randomly drew a bunch of
> boxes with people in them on the screen in a hierarchy, connected them, and
> then started randomly moving the boxes around... I wonder if the source
> still exists - or, better yet, a video of it running? Probably not, alas.)

Sun had reorgtool (orgtool) that had all the high up people down to
directors I think and you pushed a button and it reshuffled them.
It was a Xview app, anyone remember that toolkit (I sorta miss it).

--lm


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
  2017-02-01 19:44 Noel Chiappa
@ 2017-02-01 19:55 ` ron minnich
  2017-02-01 21:40 ` Larry McVoy
  1 sibling, 0 replies; 21+ messages in thread
From: ron minnich @ 2017-02-01 19:55 UTC (permalink / raw)


Speaking of this, I remember at the 1980 usenix the discussion of how UCB
folks had done a one wire change to allow MFPU (move from previous user
space) to function in user mode, thus allowing a kind of weird not quite
shared memory IPC.

Good times, when you could rip open the machine and make it better ...

ron

On Wed, Feb 1, 2017 at 11:44 AM Noel Chiappa <jnc at mercury.lcs.mit.edu>
wrote:

>     > From: "Steve Johnson"
>
>     > The meetings went on for over a year, but _I NEVER MET WITH THE SAME
>     > PERSON TWICE!_ It seemed that the only thing the marketing group knew
>     > how to do was reorganize the marketing group...
>
> Shades of SI:Electric-Marketing (I _think_ that was its name) on the
> Symbolics
> LISP Machine...
>
> (For those who never had the joy of seeing this, it randomly drew a bunch
> of
> boxes with people in them on the screen in a hierarchy, connected them, and
> then started randomly moving the boxes around... I wonder if the source
> still exists - or, better yet, a video of it running? Probably not, alas.)
>
>        Noel
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20170201/fc3d7a28/attachment.html>


^ permalink raw reply	[flat|nested] 21+ messages in thread

* [TUHS] shared memory on Unix
@ 2017-02-01 19:44 Noel Chiappa
  2017-02-01 19:55 ` ron minnich
  2017-02-01 21:40 ` Larry McVoy
  0 siblings, 2 replies; 21+ messages in thread
From: Noel Chiappa @ 2017-02-01 19:44 UTC (permalink / raw)


    > From: "Steve Johnson"

    > The meetings went on for over a year, but _I NEVER MET WITH THE SAME
    > PERSON TWICE!_ It seemed that the only thing the marketing group knew
    > how to do was reorganize the marketing group...

Shades of SI:Electric-Marketing (I _think_ that was its name) on the Symbolics
LISP Machine...

(For those who never had the joy of seeing this, it randomly drew a bunch of
boxes with people in them on the screen in a hierarchy, connected them, and
then started randomly moving the boxes around... I wonder if the source
still exists - or, better yet, a video of it running? Probably not, alas.)

       Noel


^ permalink raw reply	[flat|nested] 21+ messages in thread

end of thread, other threads:[~2017-02-02  1:10 UTC | newest]

Thread overview: 21+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-02-01 14:18 [TUHS] shared memory on Unix Paul Ruizendaal
2017-02-01 16:21 ` Mary Ann Horton
2017-02-01 17:18   ` Clem Cole
2017-02-01 17:24   ` Joerg Schilling
2017-02-01 17:39     ` Marc Rochkind
2017-02-01 18:04       ` Clem Cole
2017-02-01 18:01     ` Clem Cole
2017-02-01 18:07       ` Marc Rochkind
2017-02-01 18:15       ` Joerg Schilling
2017-02-01 18:32         ` Marc Rochkind
2017-02-01 18:35           ` Joerg Schilling
2017-02-01 18:33       ` arnold
2017-02-01 19:11         ` Steve Johnson
2017-02-01 19:24           ` Marc Rochkind
2017-02-01 19:30         ` Clem Cole
2017-02-02  0:25           ` Nick Downing
2017-02-01 23:11   ` Paul Ruizendaal
2017-02-02  1:10     ` Clem Cole
2017-02-01 19:44 Noel Chiappa
2017-02-01 19:55 ` ron minnich
2017-02-01 21:40 ` Larry McVoy

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).