This is the new guide to the design and implementation of file systems in general, and the Be File System (BFS) in particular. This book covers all topics related to file systems, going into considerable depth where traditional operating systems books often stop. Advanced topics are covered in detail such as journaling, attributes, indexing and query processing. Built from scratch as a modern 64 bit, journaled file system, BFS is the primary file system for the Be Operating System (BeOS), which was designed for high performance multimedia applications. You do not have to be a kernel architect or file system engineer to use Practical File System Design. Neither do you have to be a BeOS developer or user. Only basic knowledge of C is required. If you have ever wondered about how file systems work, how to implement one, or want to learn more about the Be File System, this book is all you will need.
* Review of other file systems, including Linux ext2, BSD FFS, Macintosh HFS, NTFS and SGI’s XFS.* Allocation policies for placing data on disks and discussion of on-disk data structures used by BFS * How to implement journaling* How a disk cache works, including cache interactions with the file system journal* File system performance tuning and benchmarks comparing BFS, NTFS, XFS, and ext2* A file system construction kit that allows the user to experiment and create their own file systems