File system is an important part of Linux world. We collect 10 useful file system concepts below to help you understand what file system is.
Important File system Concepts
File system: An organization of data as files and directories, with a file-based interface for accessing them, and file permissions to control access. Additional content may include special file types for devices, sockets, and pipes, and metadata including file access timestamps.
File system cache: An area of main memory (usually DRAM) used to cache file system contents, which may include different caches for various data and metadata types.
Operations: File system operations are requests of the file system, including read(2), write(2), open(2), close(2), stat(2), mkdir(2), and other operations.
I/O: Input/output. File system I/O can be defined in several ways; here it is used to mean only operations that directly read and write (performing I/O), including read(2), write(2), stat(2) (read statistics), and mkdir(2) (write a new directory entry). I/O does not include open(2) and close(2) (although those calls update metadata and can cause indirect disk I/O).
Logical I/O: I/O issued by the application to the file system.
Block size: Also known as record size, is the size of file system on-disk data groups.
inode: An index node (inode) is a data structure containing metadata for a file system object, including permissions, timestamps, and data pointers.
VFS: Virtual file system, a kernel interface to abstract and support different file system types.
Volume: An instance of storage providing more flexibility than using a whole storage device. A volume may be a portion of a device, or multiple devices.
Volume manager: Software for managing physical storage devices in a flexible way, creating virtual volumes for use by the OS.