On Fri, Aug 12, 2022 at 10:06 AM Warner Losh <imp@bsdimp.com> wrote:


On Fri, Aug 12, 2022 at 5:42 AM Jonathan Gray <jsg@jsg.id.au> wrote:
On Fri, Aug 12, 2022 at 05:15:52AM -0600, arnold@skeeve.com wrote:
> Paul Ruizendaal via TUHS <tuhs@tuhs.org> wrote:
>
> > I’m interested in the journey of SysV IPC. So far I have established
> > that these originated in CBUnix, with a lot of thinking on how to optimize
> > these around the time that Unix 3.0/4.0/5.0 happened. They did not appear
> > in Unix 3.0 / SysIII, and from the Unix 4.0 documentation I gather that
> > it was not included there either.
>
> I am not sure you can make that conclusion, as the 4.0 printed documents
> did not include the programmer's manual; instead they gave out the
> 3.0 manual and there was a list of changes somewhere in the other doc.
>
> Unfortunately, without actual 4.0 sources, it will always be a question.
>
> I have this VERY vague memory that I saw IPC in 4.0, but I could
> very easily be wrong... It was over 40 years ago, after all. :-)

"Release 4.0 was launched from this organization in March. It introduced
new IPC mechanisms"

from pg 39 of Pirzada's thesis
https://spiral.imperial.ac.uk/bitstream/10044/1/7942/1/Shamim_Sharfuddin_Pirzada-1988-PhD-Thesis.pdf

But also "Release 4.2 was launched in February 1982 for both the 3B & the DEC
machines. It contained improvements to the data communications and networking
software and more mature IPC" though it goes on to say 4.2 was provisional. 5.0
did have more things from CBUNIX: init and getty.

I've also found this:


"Eventually, UNIX/TS was augmented to have
many of the features present in CB-UNIX (this was done by Roger Faulkner
at Indian Hill, BTL. This, in turn, became the base for UNIX 4.0, which
was never released externally."

This from a supervisor at Columbus...

Oh, see also the message from Guy Harris a few messages previous to the one that opens up with the above link (minor edits by me):

"
doug_gwyn>The UNIX System V IPC was already present in USG UNIX 4.1.
doug_gwyn>(Not related to 4.1BSD.)

For you real UNIX trivia freaks, the USG 4.0 IPC was different
from the USG 4.1 IPC. The original message send/receive system calls sent
to a process ID; they were changed to send to message queues, which had a
32-bit unique ID, instead (which makes more sense, as it permits you to
transparently replace servers).
"

The note is extensive and goes into a lot of other areas related to IPC and lists names
and references too.  In fact the whole thread is a good candidate to be hoisted from
google groups while we have the chance and placed into the TUHS archive. Is there
a process for that?

Warner


Warner

referred to in tuhs/Documentation/Emails/dmr_wkt

"Other treasures:  Shamim Pirzada did most of a PhD thesis on Unix
as an exemplar of software evolution for Imperial College (London)
that (in the part I have) contains a pretty good account of details
of history up to about 1988."