In evaluating FiST-produced file systems, it is important to keep in mind their purpose and ``competition.'' First, the goals for stackable file systems include portability, ease of development, and ability to perform quick prototyping of new ideas. Therefore, some amount of performance degradation is expected and acceptable, given all the other benefits.
Second, ``stacked'' file systems should be compared to other interposing file systems, such as Sun's caching file system, Cachefs. It is inappropriate to compare interposing file systems to lower level file systems such as UFS or NFS, since the latter call device drivers directly without any additional overhead. Interposing file systems must incur some extra overhead because they must store and continually dereference information about the interposed file system(s).
On the other hand, it would be unfair to only compare kernel-resident interposing file systems to out of kernel file systems. Given all the context switches needed to communicate between the kernel and a user level server, it is not surprising that user level file systems are slower.