Why Your File System Is Just a More Complex Folder
The article explains how a file system works—from physical disks to logical structures—using analogies like warehouses, detailing superblocks, inodes, data blocks, tree hierarchies, common file systems, Windows C‑drive growth, Linux ext4 features, permission models, and the role of the virtual file system.
From Physical Disk to Logical Files
Physical disk = empty warehouse
↓
Partition = divided into rooms
↓
Formatting = installing shelving system
↓
File system = warehouse manager softwareWithout a file system a disk is only a collection of 0s and 1s; with one the operating system can locate directories such as "My Documents".
Common File Systems
FAT32 – typical on USB drives and older devices; compatible widely but limits single files to <4 GB.
NTFS – default for Windows system drives; supports large files and permission management.
exFAT – used on large‑file USB drives; removes the 4 GB limit of FAT32.
ext4 – common on Linux; efficient and stable.
APFS – macOS modern file system; provides encryption, snapshots, and merged partitions.
XFS – enterprise storage; handles very large files with high performance.
How a File System Works
1. Superblock – Warehouse Records
Superblock records:
- File system size
- Number of free blocks
- Inode table location
- File system state2. Inode – File "ID Card"
Inode contains:
- File size
- Creation and modification timestamps
- File permissions
- File type
- Data block pointersEach file has an inode and is accessed via its inode number.
# Show a file's inode number
ls -i document.txt
# Output example: 1234567 document.txt
# Show detailed file info (including inode)
stat document.txt3. Data Blocks – Storage Cabinets
inode structure:
┌─────────────┐
│ File size │
│ Permissions│
│ Timestamps │
├─────────────┤
│ Block ptr1 ──→ Data block 1
│ Block ptr2 ──→ Data block 2
│ Block ptr3 ──→ Data block 3
│ ... │
└─────────────┘A single inode can point to multiple data blocks, forming a chain for large files.
Tree Structure of a File System
/
├── home/
│ ├── user1/
│ │ ├── documents/
│ │ │ ├── report.docx
│ │ │ └── notes.txt
│ │ └── pictures/
│ │ └── photo.jpg
│ └── user2/
├── etc/
│ └── config.conf
└── var/
└── log/
└── system.logEach directory is a folder.
Each file resides at a leaf node.
Path separator: / on Linux/macOS, \ on Windows.
Why the C Drive Fills Quickly
Windows C: (system drive)
↓
Default installation location
↓
Install software → C:
Download files → C:
WeChat cache → C:
↓
Disk usage grows over timeSolutions
Change default install location to another drive (e.g., D: or E:).
Move large user folders such as WeChat or QQ to another drive.
Clean temporary files regularly (e.g., Disk Cleanup).
Expand storage by adding a larger disk or deleting unnecessary large files.
Linux ext4 File System
# Show disk usage
df -h
# Show directory size
du -sh /home/user/documents
# Show file type
file document.txtext4 Features
Journaling – prevents corruption after power loss and records operation logs for fast recovery.
Delayed allocation – collects data before writing it in a single operation, improving performance.
Dynamic inode allocation – inodes are allocated on demand, eliminating the need for pre‑allocation.
File System Permission Management
Linux Permissions
# ls -l shows permissions
-rwxr-xr-x 1 user group 4096 Jan 15 10:30 document.txt
# Explanation of fields:
# - First character: file type (- for regular file, d for directory)
# - rwx: owner permissions (read, write, execute)
# - r-x: group permissions (read, execute)
# - r-x: others permissions (read, execute)Windows (NTFS) Permissions
Full control
Modify
Read & execute
Read
Write
Virtual File System (VFS)
Programs can operate files through a single set of APIs regardless of the underlying file system.
Application
↓
Virtual File System layer (VFS)
↓
┌─────┬─────┬─────┬─────┐
│ext4 │NTFS │FAT32│APFS │ ← actual file systems
└─────┴─────┴─────┴─────┘VFS provides a unified interface that abstracts away the differences between ext4, NTFS, FAT32, etc.
Summary: File System Family
Core concepts:
1. Superblock – records basic file‑system information.
2. Inode – stores metadata (size, timestamps, permissions, type, block pointers).
3. Data blocks – hold the actual file content.
4. Directory entry – points to an inode (acts like a shortcut).
Common systems:
Windows → NTFS (system drive), exFAT (large‑file USB)
Linux → ext4 (default), XFS (large‑scale)
macOS → APFS (modern), HFS+ (legacy)Choosing the appropriate file system affects how efficiently small files, large files, and permissions are handled.
Signed-in readers can open the original source through BestHub's protected redirect.
This article has been distilled and summarized from source material, then republished for learning and reference. If you believe it infringes your rights, please contactand we will review it promptly.
IT Learning Made Simple
Learn IT: using simple language and everyday examples to study.
How this landed with the community
Was this worth your time?
0 Comments
Thoughtful readers leave field notes, pushback, and hard-won operational detail here.
