Summary: - 1 -
The Sun Network Filesystem: Design, Implementation and Experience
Sun Microsystems, Inc.
2550 Garcia Ave.
Mountain View, CA. 94043
The Sun Network Filesystem (NFS) provides transparent, remote access to filesystems. Unlike many
other remote filesystem implementations under UNIX, NFS is designed to be easily portable to other
operating systems and machine architectures. It uses an External Data Representation (XDR)
specification to describe protocols in a machine and system independent way. NFS is implemented on top
of a Remote Procedure Call package (RPC) to help simplify protocol definition, implementation, and
In order to build NFS into the UNIX kernel in a way that is transparent to applications, we decided to add
a new interface to the kernel which separates generic filesystem operations from specific filesystem
implementations. The "filesystem interface" consists of two parts: the Virtual File System (VFS)
interface defines the operations that can be done on a filesystem, while the virtual node (vnode) interface
defines the operations that can be done on a file within that filesystem. This new interface allows us to
implement and install new filesystems in much the same way as new device drivers are added to the