openskills.info
Open Course

File Systems Fundamentals

A file system gives stored data names, directories, metadata, and rules for access. It maps the files applications use to storage while preserving a consistent namespace across devices and file system implementations.

itOperating systems

Don't Panic — File Systems Fundamentals

A file system is the operating system's arrangement for turning unromantic storage locations into files with names, directories, metadata, and access rules. The disk offers numbered places to put bytes. This is useful, but it has all the charm of being handed a warehouse with every shelf numbered and no labels. A file system supplies the labels, along with rules for finding and protecting what they name.

The important trick is that a pathname is a route, not the thing at the end of it. The operating system walks directory entries one component at a time until it reaches a file object, often an inode on Unix-like systems. Opening that object creates an open file description and gives the process a file descriptor. Reads and writes then use the handle instead of setting off on the directory expedition again.

This is why names behave like small bureaucratic fictions. A hard link gives one file object another directory entry, so removing one name does not finish the job while another link remains. An open descriptor can also keep the object alive after its last visible name is gone. A symbolic link is a different creature: it stores another pathname and asks resolution to continue from there, which is a perfectly reasonable thing to do until it points somewhere surprising.

A mount makes separate file systems appear in one visible hierarchy. It attaches a file-system root at a directory, hiding that directory's former view without copying it. That explains why a path can cross from local storage to a network, memory, or kernel-generated file system while still looking like an ordinary directory walk. The hierarchy is a map, not proof that every place on it has the same storage or failure behavior.

The surprise waiting in the supply closet is that a successful write, an atomic rename, and durable storage are different promises. Caching can make data visible before it is durable. Journaling and copy-on-write designs help recover structural state after interruption, but neither recreates data with no valid copy. Backups remain their own job, because the universe has never accepted a journal entry as a substitute for one.

When space goes missing, count more than bytes. Data blocks, inodes, metadata space, quotas, snapshots, and open-but-unlinked files can each explain a failure. Check the Cheatsheet for the object relationships and diagnostic signals. Open the Slides for the layer map and the difference between visibility, atomicity, and durability. Use the Practice Reference and Exercise to watch links and descriptors behave in a disposable directory. The Reference tab leads from the portable rules into the implementation details that make each file system delightfully particular.

Where this skill leads

Relevant careers

See how this topic contributes to broader role-level skill maps.

Sources