[plug] Named pipe. Solution to programming problem?

Craig Ringer craig at postnewspapers.com.au
Fri Nov 19 14:54:55 WST 2004


On Fri, 2004-11-19 at 08:01, James Devenish wrote:

> Ah, yep. Named pipes would indeed be a solution to this problem. The
> process that creates and maintains the pipe *will* need to be running
> all the time, but it need invoke the update routines only when the pipe
> is opened by a client. *However*, a named pipe is opened differently
> from a regular file, so your client programmes would have to be
> rewritten (which you say you cannot do). It sounds more like you need
> POSIX STREAMS support (yes, that's STREAMS in all-caps). It allows a
> regular file to be backed by a programme. However, I'm not sure whether
> STREAMS are widely available with Linux.

Not consistently across all filesystems, no. They're available in XFS,
and I think they're available in Reiser4 too (though no doubt with a
weird and different interface). JFS may also support them. I don't think
Ext3 or reiser3 do.

Ext3 does support EAs, which may do the trick if you only need to store
a small amount (64KB?) of information. Reiser3 will with a patch, and I
think both XFS and JFS support them out of the box.

You certainly can't rely on arbitrary-length streams being supported on
any given Linux box. This has recently been irritating me with NetATalk,
as using streams on NetATalk would make it possible to eliminate the
ugly .AppleDouble directories. Oh well.

--
Craig Ringer




More information about the plug mailing list