Liste des Groupes |
On 22 Nov 2024 06:09:05 GMT, vallor wrote:
Doesn't the named pipe connection work through the filesystem code? That
could add overhead.
No. The only thing that exists in the filesystem is the “special file”
entry in the directory. Opening that triggers special-case processing in
the kernel that creates the usual pipe buffering/synchronization
structures (or links up with existing structures created by some prior
opening of the same special file, perhaps by a different process), not
dependent on any filesystem.
I just tried creating a C program to do speed tests on data transfers
through pipes and socket pairs between processes. I am currently setting
the counter to 10 gigabytes, and transferring that amount of data (using
whichever mechanism) only takes a couple of seconds on my system.
So the idea that pipes are somehow not suited to large data transfers is
patently nonsense.
Can't use named pipes on just any filesystem -- won't work on NFS for
example, unless I'm mistaken.
Hard to believe NFS could stuff that up, but there you go ...
Les messages affichés proviennent d'usenet.