[TUHS] First appearance of named pipes
Heinz Lycklama
heinz at osta.com
Sat Mar 7 15:08:35 AEST 2020
Clem, you are correct. mknod() was used in the /usr/group standard in 1984.
mkfifo() and mkdir() were part of the IEEE Trial Use Standard in 1986,
as well
as the adopted IEEE Std 1003.1-1988 (POSIX) standard.
Heinz
On 3/6/2020 1:10 PM, Clem Cole wrote:
> BTW: My memory is that Joy did not like them for some reason,
> probably because they were not as sexy as some of the stuff Accent
> could do (but that's a guess -- I've forgotten). So with 4.2, Joy
> created Unix domain sockets.
>
> BTW: a slow cache refresh is occurring in my brain ... I remember one
> of the things that there was a lot of arguing/moaning about at the
> time was the directionality of such a feature. Bruce's hack from the
> mid-70s was unidirectional and you needed two pipes to go both ways.
>
> On Fri, Mar 6, 2020 at 4:06 PM Clem Cole <clemc at ccc.com
> <mailto:clemc at ccc.com>> wrote:
>
> The first version was from Rand (called "Rand Pipes"). They
> certainly were available in the mid-70s on Sixth Edition, you have
> to ask someone like Bruce Borden if they were on Fifth. I think
> the code is on one of the 'USENIX' tapes in Warren's archives.
>
> At this point in time, someone would need to refresh my memory of
> the details of Rand's implementation compared to what came in the
> USG systems in the 1980s. For instance, I believe the early
> versions used mknod(2) to create the "named entity." IIRC early
> USG did that too, and mkfifo(3) came as part of the POSIX (I have
> memories of the discussion at a POSIX meeting, but as I say, I've
> forgotten the details).
>
> IIRC there were differences in buffering behavior, flushing, error
> path between USG's later versions and the original Rand, but I'd
> have to stare at the code again to remember.
>
> On Fri, Mar 6, 2020 at 3:42 PM Paul Ruizendaal <pnr at planet.nl
> <mailto:pnr at planet.nl>> wrote:
>
> The Luderer paper on distributed Unix has the following paragraph:
>
> "A new special UNIX interprocess communication mechanism is
> the fifo, which provides communication between unrelated
> processes by associating a new special file type with a file
> name. Since remote fifos are legal, they can be used for
> interprocessor communication between S-UNIX machines or
> between an S-UNIX machine and an F-UNIX machine.”
>
> The paper is from late 1981. Maybe I’m especially mud-eyed
> today, but I cannot see FIFO’s implemented in V7..V8 or
> 4.1xBSD. When did FIFO’s become a standard Unix feature?
>
> Paul
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://minnie.tuhs.org/pipermail/tuhs/attachments/20200306/1e155f2e/attachment.html>
More information about the TUHS
mailing list