Explaining the Data Structures in a VFS
In the first chapter of this book, we got a good look at the virtual filesystem (VFS), its most common functions, why it is necessary, and how it plays a pivotal role in implementing the everything is a file concept in Linux. We also explained the system call interface in Linux and how user-space applications can use generic system calls and interact with the VFS. The VFS is sandwiched between user-space programs and actual filesystems and implements a common file model so that applications can use uniform access methods to perform their operations, regardless of the filesystems being used.
While talking about the different filesystems, we mentioned that the VFS uses structures such as inodes, superblocks, and directory entries to represent a generic view of the filesystems. These structures are crucial as they ensure a clear distinction between the metadata and the actual data of a file.
This chapter will introduce you to the different...