Re: RFS vs NFS


Guy Harris (gorodish!guy@sun.com)
18 Aug 87 18:35:52 GMT


> Hang on a minute mate. If all the file system isn't in NFS, what is NFS?
> A piece of the file system? As in, "part of our file system is stateless".
> If, in order to implement the entire file system, you have to access
> components that are not stateless, then isn't it incorrect to say that
> the file system is stateless?

It depends on your definition of "file system". All the functions necessary
for opening, reading, writing, getting the status of, ... files are in NFS.
None of the functions necessary for locking regions of files are in NFS.

NFS isn't a file system; it's an RPC-based mechanism for performing certain
operations on remote file systems. Its semantics match the UNIX file system
better than they match those of other file systems, but it is used for other
file system types, e.g. MS-DOS. Applications running on a machine with NFS
generally don't use NFS, they use the native OS's file manipulation operations.
Some of those map to NFS operations, or to sets of NFS operations, some don't.
For example, a UNIX "open" will map to a series of NFS "lookup" operations, and
some other operations; a "read" will map to one or more NFS "read" operations,
if the data to be read isn't in the buffer cache. However, an "fcntl" call to
lock a file will map to a lock manager RPC call, not to any NFS RPC calls.

If you are using file or record locking, then no, the file system that the
application sees is not stateless, since that file system is implemented both
by the NFS and by the lock manager. If you are not using file or record
locking, then the file system the the application sees is stateless.
        Guy Harris
        {ihnp4, decvax, seismo, decwrl, ...}!sun!guy
        guy@sun.com



This archive was generated by hypermail 2.0b3 on Thu Mar 09 2000 - 14:39:14 GMT