How This Book Is Organized

Although highly technical in nature, as with all books describing operating system kernels, the goal of this book has been to follow an approach that enables readers not proficient in operating system internals to read the book.

Earlier chapters describe UNIX filesystems from a user perspective. This includes a view of UNIX from a historical perspective, application programming interfaces (APIs), and filesystem basics. This provides a base on which to understand how the UNIX kernel provides filesystem services.

Modern UNIX kernels are considerably more complex than their predecessors. Before diving into the newer kernels, an overview of 5th/6th Edition UNIX is described in order to introduce kernel concepts and how they relate to filesystems. The major changes in the kernel, most notably the introduction of vnodes in Sun's SunOS operating system, are then described together with the differences in filesystem architectures between the SVR4 variants and non-SVR4 variants.

Later chapters start to dig into filesystem internals and the features they provide. This concludes with an implementation of the original System V UNIX filesystem on Linux to demonstrate how a simple filesystem is actually implemented. This working filesystem can be used to aid students and other interested parties by allowing them to play with a real filesystem, understand the flow through the kernel, and add additional features.

The following sections describe the book's chapters in ...

Get UNIX Filesystems: Evolution, Design, and Implementation now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.