next up previous contents
Next: 2.2.2 A Stackable Vnode Up: 2.2 The Vnode Interface Previous: 2.2 The Vnode Interface

2.2.1 The Original Vnode Interface

The vnode interface3 was invented over a decade ago to facilitate the implementation of multiple file systems in one operating system [Kleiman86], and it has been very successful at that. It is now universally present in Unix operating systems. Readers not familiar with the vnode interface may refer to Appendix sec-appendix-vnode for a tutorial on the subject.

The designers of the original vnode interface envisioned ``pluggable'' file system modules [Rodriguez86], but this capability was not present at the beginning. Through the 1980s Sun made at least three revisions of the interface designed to enhance plugability [Rosenthal90]. However, during the same period Sun lost control of the vnode definition as other operating system vendors made slight, incompatible, changes to their vnode interfaces.

Erez Zadok