Regular pipe vs. Named Pipe

Dan Bernstein brnstnd at kramden.acf.nyu.edu
Sat Jun 15 07:52:09 AEST 1991


In article <1991Jun13.143802.3600 at chinet.chi.il.us> les at chinet.chi.il.us (Leslie Mikesell) writes:
> In article <25101:Jun1217:29:0291 at kramden.acf.nyu.edu> brnstnd at kramden.acf.nyu.edu (Dan Bernstein) writes:
> >I meant what I wrote. A program which supports message queues and
> >UNIX-domain sockets will work correctly on far more machines than a
> >program which supports named pipes. In fact, a program which does
> >anything with named pipes that couldn't be done with pipes is almost
> >certainly going to fail on one of (A) SunOS; (B) Ultrix; (C) SVR4.
> Does "anything" include open()?

Yes. System V, BSD, and POSIX all disagree on the blocking behavior of
opening named pipes in various modes, on their behavior with multiple
readers and writers, and on the effects of close().

> And by more machines, do you mean
> more types of machine or more existing machines?

Both. Most types of machines support sockets; most machines support
message queues. Most types of machines do not support named pipes. Now
that several vendors offer System V-based POSIX systems, you can't even
write named pipe code that works on all System V machines.

---Dan



More information about the Comp.unix.internals mailing list