Re: Question on Unix FIFOs - why slow when on NFS?

From: Greg Andrews (gerg_at_panix.com)
Date: 08/03/04


Date: Tue, 3 Aug 2004 05:15:09 +0000 (UTC)

v_borchert@despammed.com (Volker Borchert) writes:
>Casper H.S. *** wrote:
>
>|>>I've noticed that a FIFO (that is, a pseudo-file that shows up with a 'p'
>|>>in the "permission bits") is very slow if it is created on an NFS share.
>
>|> The file only exists in memory,
>
>Probably a stupid question, but... how can that be? If the server sees
>it and shows it, it _must_ have gone over the wire?
>

The filename and inode information went over the wire, yes.
But the interpretation of the major and minor device numbers
happens in the NFS client machine's kernel. The mapping of
the major/minor numbers to a device driver happens in the
NFS client machine's kernel. The invocation of the device
driver happens in the NFS client machine's kernel. So reads
and writes are handled by the device driver in the NFS client
machine's kernel - not the kernel in the NFS server.

Reading the info about the device file happens over the wire.
Other I/O happens in the local kernel, not over the wire.

  -Greg

-- 
Do NOT reply via e-mail.
Reply in the newsgroup.