File Systems Explained – How Your Operating System Organizes Data
Have you ever wondered why you must "format" a new USB drive? Why are there different formats like NTFS, FAT32, exFAT, and ext4? Why can't you copy a 5 GB file to a FAT32 drive? In this post, we will dive deep into file systems – the silent organizers that turn raw storage into usable files.
1. What Is a File System?
A file system is the method and data structure that an operating system uses to store, retrieve, and manage files on a storage device. Without a file system, a storage device is just a linear array of blocks – each block is 512 bytes or 4 KB, with no names, no folders, no permissions.
The file system provides naming (human-readable file names), hierarchy (folders within folders), metadata (file size, creation time, permissions), space management (tracking which blocks are free), and integrity (some file systems log changes to recover after a crash).
2. How Data Is Physically Stored
A storage device is divided into blocks (typically 4 KB each). The file system maintains a map telling it, for each file, which blocks belong to that file and in what order.
Simple analogy: A book's pages are like blocks. The table of contents (file system) tells you that Chapter 1 starts on page 1, Chapter 2 on page 30. A file system can store a file's blocks in non-sequential locations – this is called fragmentation. On HDDs, fragmentation slows down reads. On SSDs, it does not matter for speed.
3. Common File Systems Compared
|
File System |
Max File Size |
OS |
Key Features |
|
FAT32 |
4 GB |
All (USB drives) |
Universal compatibility, no permissions, no journaling. |
|
exFAT |
16 EB |
Windows, macOS, Linux |
Modern replacement for FAT32, no 4 GB limit. |
|
NTFS |
16 EB |
Windows (read/write); macOS (read-only by default) |
Journaling, permissions, compression, encryption. |
|
ext4 |
16 TB (default) |
Linux |
Journaling, backward compatibility with ext2/3. |
|
APFS |
8 EB |
macOS, iOS |
Copy-on-write, snapshots, strong encryption. |
4. The 4 GB FAT32 Limitation
FAT32 was designed in 1996. It uses 32-bit numbers to point to blocks, so the maximum file size is roughly 4 GB. That is why you cannot copy a 5 GB movie to a FAT32 USB stick – the file system simply cannot represent a file that large.
Solution: Format the USB drive as exFAT, which is the best cross-platform choice (works on Windows, Mac, Linux, and even some TVs and game consoles).
5. Journaling – The Crash-Proof Feature
Imagine you are copying a 10 GB file to your external drive. Halfway through, the power goes out. The file system may be in an inconsistent state.
A journaling file system (NTFS, ext4, APFS) writes a log (journal) before actually making changes. If a crash occurs, the file system replays the journal on next boot to finish or roll back the operation. Non-journaling file systems (FAT32, exFAT) must run a full disk check, which can take minutes or hours on large drives.
Pro tip: For external USB drives used only for media, exFAT is fine. For a drive containing important documents, NTFS or ext4 is safer.
6. Permissions and Ownership
NTFS and ext4 support file permissions. On Windows NTFS, each file has an Access Control List (ACL) specifying which users can read, write, or execute. On Linux ext4, permissions are simpler: read/write/execute for owner, group, and others.
7. Formatting – What Actually Happens?
When you "format" a drive, you are not erasing the data. Instead, the file system writes new metadata structures (a blank directory table, a free block bitmap, a new journal). The existing data blocks remain untouched until overwritten.
- Quick format: Only overwrites the file system metadata. Data is recoverable with tools like Recuva or TestDisk.
- Full format (Windows): Overwrites every block. Data is much harder to recover.
Summary
|
Concept |
Explanation |
|
File system |
Structure that organizes files and directories on a storage device. |
|
Block |
Smallest unit of storage (usually 4 KB). |
|
Journaling |
Log of intended changes; enables crash recovery. |
|
FAT32 |
Old, universal, but max file size 4 GB. |
|
NTFS |
Windows default; supports permissions, journaling, large files. |
|
ext4 |
Linux default; journaling, robust. |
|
APFS |
Mac default; copy-on-write, snapshots. |
Review Questions
- You have a 6 GB video file. Why does it fail to copy to a FAT32 USB drive?
- What is the advantage of a journaling file system over a non-journaling one?
- If you accidentally quick-format a drive containing family photos, can you still recover them?