File system

Edit · View history

File system

A file system is a method and data structure that an operating system uses to control how data is stored, retrieved, and organized on a hard disk drive or other storage medium. File systems manage access to data, provide a hierarchical structure (often through directory structures), and define metadata such as file names, timestamps, permissions, and sizes. Without a file system, stored information would exist as one large block of data with no way to identify where one piece of information ends and the next begins.

The first file systems were simple flat structures used in early mainframe computers. With the rise of personal computers, more sophisticated systems like the FAT file system were developed to support floppy disks and hard drives. Later, hierarchical file systems such as NTFS (Windows), HFS+ (macOS), and ext4 (Linux) introduced journaling, extended metadata, and advanced permission models. Modern file systems also support features like snapshots, compression, encryption, and volume management.

History

Early file systems, such as the one in the IBM System/360 (1960s), used a simple catalog of files stored on punched cards or tape. The arrival of disk drives in the 1970s led to the development of the FAT file system by Microsoft for floppy disks. The Unix File System (UFS) introduced hierarchical directories, symbolic links, and inode-based metadata in the late 1970s. The 1990s saw the introduction of journaling file systems (e.g., ext3, NTFS) to reduce data loss after crashes. In the 2000s, ZFS and Btrfs brought copy-on-write, volume management, and checksumming to consumer and enterprise systems.

Features

Common features of modern file systems include:

Types of file systems

File systems can be classified by their design and support: