Tru64 UNIX File System: Adminstration Handbook

It takes considerable knowledge just to realize the extent of your own ignorance.
Thomas Sowell
Up to this point, we have discussed primarily the storage subsystem and Logical Storage Manager layers. In this chapter, we cover the design of the Tru64 UNIX file system, the layer that sits between the user level and each supported file system type.
We begin by covering the virtual file system, including the structures and operations defined by this standard. Next, we give details of the caches that Tru64 UNIX employs to assist with speeding up access to the file systems. Finally, we finish up this chapter with a discussion of the system call interface and the most common system calls used for file I/O.
As we stated previously, Tru64 UNIX supports many different types of file systems. In this chapter, we describe how this is accomplished internally by the operating system. The virtual file system (VFS) is a layer that exists between the user layer and each supported type of file system. This layer of abstraction offers a great deal of power to the user. A user layer program does not need to understand the details of how to write a file for example, but only how to use the write(2) system call. As long as the system call conforms to the POSIX.1 standard, the program will be completely portable between any file system type that supports the semantic. Naturally, the write(2) will fail on a file system...