Remote File Sharing

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search

Remote File Sharing (RFS) is a discontinued distributed file system developed by AT&T in the 1980s. It was first delivered with UNIX System V Release 3 (SVR3).[1] It was also included in AT&T's UNIX System V Release 4, but as that also included NFS which was more interoperable, RFS was little used. Some licensees of AT&T's UNIX System V Release 4 didn't include the RFS support in their SVR4 distributions, and Sun Microsystems removed it from Solaris 2.4.

Compared to NFS it made quite different design decisions. Instead of focusing on reliable operation in the presence of failures, it focused on preserving UNIX file system semantics across the network. Unlike NFS (before version 4), the RFS server maintains state to keep track of how many times a file has been opened, if any process has locked the file, etc. RFS was a product from Bell Laboratories.


  • Provides complete UNIX/POSIX file semantics. (File locking, etc.)
  • Allows mounting of devices across the network (e.g. /dev/cdrom can be accessed remotely)
  • Transparent access to files. Users needn't know where a file is located.

Remote system call interface[edit]

  • CHDIR Change directory
  • CHMOD Change file mode
  • CHOWN Change file owner
  • CLOSE Close a file
  • CREAT Create a file
  • EXEC Execute a file
  • EXECE Execute a file with an environment
  • FSTAT Stat a file using a file descriptor
  • FSTATFS Stat a file system using a file descriptor
  • LINK First half of link() operation
  • LINK1 Second half of link() operation
  • MKNOD Make block or character special file
  • OPEN Open a file
  • READ Read from a file
  • SEEK Seek on a file
  • STAT Stat a file using pathname
  • STATFS Stat a file system using pathname
  • UTSSYS Return information about a mounted files
  • GETDENTS Read directory entries in a file system
  • SRMOUNT Server side of remote mount
  • SRUMOUNT Server side of remote unmount
  • COREDUMP Dump core request
  • WRITEI Internal form of write system call
  • READI Internal form of read system call
  • RSIGNAL Sendremote signal
  • SYNCTIME Synchronize time between machines
  • IPUT Free a remote inode
  • IUPDATE Update a remote inode
  • UPDATE Write modified buffers back to disk.

See also[edit]


  1. ^ Rifkin, Andrew P.; Forbes, Michael P.; Hamilton, Richard L.; Sabrio, Michael; Shah, Suryakanta; Yueh, Kang (1987). "RFS architectural overview". Australian UNIX systems User Group Newsletter. 7.