Glossary of terms

File system

A file system (FS for short) is a set of methods and structures used by a computer’s operating system (OS) to organize data on any digital storage device and to control the free space available for data storage. In general, a file system is a structured representation of data with a set of metadata that describes the data. It is applied to the storage when it is formatted.

This structure is used for the entire storage and is also part of its isolated segment – a disk partition. It usually operates in blocks rather than sectors. Modern file systems mostly use blocks ranging in size from 1 to 128 sectors (512-65536 bytes). It’s worth noting that there is no single common type of file system. This is because the file system is closely related to the operating system, which plays a big role in choosing the appropriate format. As a rule, each operating system supports its own separate set of file systems.

The file system connects the storage devices on the one hand and the APIs for accessing files on the other. When an application program accesses a file, it is not important to know how the information in a particular file is located, nor what physical type of media (CD, hard disk, magnetic tape, flash memory block, etc.) it is written on.

All the program needs is the file name, its size and attributes. It receives this data from the file system driver. It is the file system that determines where and how a file will be written on physical media (for example, a hard disk). However, the file system is not always directly connected to the physical storage medium. There are virtual file systems, as well as network file systems, which are just a way to access files located on a remote computer.

In addition to performing these functions, the file system is also responsible for:

  • Allocating blocks for new files;
  • Assigning names and other important properties to files;
  • Grouping files into directories;
  • Reading existing files and making changes to them;
  • Performing file deletion.

In multi-user systems, another task appears: protecting the files of one user from unauthorized access by another user, as well as ensuring collaboration with files, for example, when one user opens a file, the same file will be temporarily available to others in read-only mode.

Blog