Analysis and Evolution of a Journaling File System
Vijayan Prabhakaran, Andrea Arpaci-Dusseau, Remzi Arpaci-Dusseau
We present measurements and analysis of the Linux ext3 file system. We develop and apply a novel analysis method known as semantic block-level analysis (SBA), which examines the low-level block stream that a file system generates in order to understand its behavior under a series of controlled workloads. We use SBA to evaluate the strengths and weaknesses of the ext3 design and implementation; in comparison to standard benchmarking approaches, SBA enables us to understand why the file system behaves in a certain way, knowledge that is usually only available to the file system developers. We then develop and apply a new complementary technique known as semantic trace playback (STP) to evaluate the effect of different possible changes to the file system. In contrast to the cumbersome and time-consuming process of changing the file system implementation directly, STP enables us to rapidly gauge the potential benefits of a given file system modification without the heavy investment in implementation effort. Using STP, we propose and assess various modifications to the base ext3 implementation.
Download this report (PDF)
Return to tech report index