This section explores the UFS filesystem, formerly known as the Berkeley Fast File System (FFS), from its roots in BSD through to today's implementation and the enhancements that have been added to the Sun Solaris UFS implementation.
UFS has been one of the most studied of the UNIX filesystems, is well understood, and has been ported to nearly every flavor of UNIX. First described in the 1984 Usenix paper “A Fast Filesystem for UNIX” [MCKU84], the decisions taken for the design of UFS have also found their way into other filesystems, including ext2 and ext3, which are described later in the chapter.
In [MCKU84], the problems inherent with the original 512-byte filesystem are described. The primary motivation for change was due to poor performance experienced by applications that were starting to be developed for UNIX. The old filesystem was unable to provide high enough throughput due partly to the fact that all data was written in 512-byte blocks, which were abitrarily placed throughout the disk. Other factors that resulted in less than ideal performance were: