Development on the VERITAS filesystem, VxFS, started in the late 1980s with the first implementation for SVR4.0. Over the past decade, VxFS has grown to be the single most commercially successful filesystem for UNIX, with ports to many versions of UNIX, Linux, and microkernel-based UNIX implementations. At the time of writing, VERITAS directly supports Solaris, HP-UX, AIX, and Linux as its core platforms.
VxFS, a journaling, extent-based filesystem, is also one of the most feature-rich filesystems available and one of the most scalable and performant. This is the result of many years of development over many platforms from single CPU machines to 64-way enterprise-class SMP machines. As such, VxFS has been designed to automatically tune itself to the underlying platform and system resources.
The following sections highlight the main features available with VxFS. At the time of writing, this covers VxFS version 3.5. Later chapters describe some of these features in more detail.
Most traditional UNIX filesystems are block based such that each time data is allocated to a file, the blocks allocated correspond to the filesystem block size. If the block size is 4KB, a 16KB file will have four blocks. With the traditional scheme of mapping blocks from the inode, a large file quickly goes into indirect blocks, double indirects, and even triple indirects. There are two main problems with this approach, which results in ...