below.. in-line

On Sat, Mar 7, 2020 at 7:18 AM Paul Ruizendaal <pnr@planet.nl> wrote:
Thanks for the feedback, all.

Rand ports were done in 1977 by Sunshine/Zucker. I’ve only come across Rand Ports in the context of V6 and the Arpa crowd 1977-1981. I’ve never seen a reference to Rand Ports on V7 or later. This of course does not mean that it did not exist.
Steve Glaser hacked was playing with them at Tektronix in 1979, as he had put them into their V6 system before I got there IIRC.   I switched the user code to use Chesson's MPX in V7, which is why I think they never were used much in V7.

I've forgotten what Bruce used for UNET - I'm CC'ing him here, hoping to jog his memory.,


 

I’ve dug further, and it would seem that named pipes under the name ‘fifo’ appeared first in SysIII (1980). That matches with Luderer’s remark. It does not seem to exist in the Research editions. It only appears in BSD in the Reno release, 1990. All in all, it would seem that ‘fifo’s were a SysV thing for most of the 80’s, with the BSD lineage using domain sockets instead (as Clem mentioned).

Yes, that's right.  And if you were someone like Masscomp or Pyramid trying to thread both systems, we had both in our kernels.

 

Interestingly, Luderer also refers to a 1978 paper by Steve Holmgren (one of the Arpa Unix authors), suggesting ’sockets’ (in today’s parlance) for interproces communication.

Paul

PS really nobody on the list recalls Luderer's (et al.) distributed Unix and how it related to other work ??


> On 6 Mar 2020, at 23:44, Noel Chiappa <jnc@mercury.lcs.mit.edu> wrote:
>
>
>> From: Paul Ruizendaal
>
>> The paper is from late 1981. ... When did FIFO's become a
>> standard Unix feature?
>
> Err, V4? :-) At least, that's when pipes arrived (I think - we don't have V4
> sources, but there are indications that's when they appeared), and a pipe is a
> FIFO. RAND ports just allowed (effectively) a pipe to have a name in the file
> system.
>
> The implementation of both is pretty straight-forward. A pipe is just a file
> which has a maximum length, after which the writer is blocked. A port is
> just a pipe (it uses the pipe code) whose inode appears in the file system.
>
>> From: Clem Cole
>
>> I think the code is on one of the 'USENIX' tapes in Warren's archives.
>
> Doc is here:
>
https://minnie.tuhs.org//cgi-bin/utree.pl?file=BBN-V6/doc/ipc
>
> and sources for all that are here:
>
> https://minnie.tuhs.org//cgi-bin/utree.pl?file=BBN-V6/dmr
> https://minnie.tuhs.org//cgi-bin/utree.pl?file=BBN-V6/ken
>
> (port.c is in 'dmr', not 'ken'where it should be).
>
>       Noel