File Systems Overview
A file system is a method of organizing files on physical media, such as hard drives, CD's, flash drives, and even computers. Users are presented with several different choices of file systems when formatting such media. These choices depend on the type of media involved and the situations in which the media is being formatted. The most common file systems are as follows:
The NTFS file system
NTFS (short for New Technology File System) is a modern, well-formed file system that is most commonly used by Windows 10 and 11. It has feature-rich, yet simple organization that allows it to be used on very large volumes.
NTFS has the following properties:
-
NTFS partitions can extend up to 16EB (about 16 million TB).
- System and hardware limitations often reduce this number to 8PB.
-
Files stored to NTFS partitions can be as large as the partition.
-
NTFS partitions occasionally become fragmented and should be de-fragmented every so often.
-
NTFS partitions can be read from and written to by Windows and Linux systems and, can only be read from by macOS systems.
It is recommended that NTFS be used on all media whose use is primarily with modern Windows systems. It should not be used for devices which need to be written to by macOS systems or on media that is used in devices which are not compatible with NTFS.
The FAT file system
The FAT (short for File Allocation Table) file system is a general purpose file system that is compatible with all major operating systems (Windows, macOS, and Linux/Unix). It has relatively simple technical underpinnings, and was the default file system for all Windows operating systems prior to Windows 2000. Because of its overly simplistic structure, FAT suffers from issues such as over-fragmentation, file corruption, and limits to file names and size.
The FAT file system has the following properties:
-
FAT partitions cannot extend beyond 2TB.
- NOTE: Windows cannot format a disc larger than 32 GB to FAT32, but macOS can.
-
Files stored to a FAT partition cannot exceed 4GB.
-
FAT partitions need to be defragmented often to maintain reasonable performance.
-
FAT partitions larger than 32GB are generally not recommended as that amount of space starts to overwhelm FAT's overly simplistic organization structure.
FAT is generally only used for devices with small capacity where portability between operating systems is paramount. When choosing a file system for a hard disk, FAT is not recommend unless you are using an older version of Windows.
NOTE: This section refers to the FAT32 file system. Some early versions of Windows 95 used the FAT16 file system, which had even more technical issues and stricter limitations. It is recommended that FAT16 is never used on any modern media.
The exFAT file system
The exFAT (Extended File Allocation Table) is a Microsoft file system that is compatible with Windows and macOS. It is also compatible with many media devices such as TVs and portable media players.
exFAT has the following properties:
-
exFAT partitions can extend up extremely large disc sizes. 128PB is the recommended maximum.
-
Files up to 16 EiB can be stored on an exFAT partition.
- exFAT is commonly used for drives shared between macOS and Windows systems.
-
exFAT does not provide the same journaling and advanced filesystem as NTFS or APFS.
The APFS file system
APFS, or Apple File System, is a file system designed by Apple Inc. to replace the HFS Plus file system.
APFS has the following properties:
- APFS is optimized for solid-state drives.
-
Maximum file size is 8 EB (about 8 million TB).
-
Windows users cannot read or write to APFS.
- APFS supports multiple volumes in the same container.
-
APFS supports full disk encryption.
The EXT file system
The extended file system was created to be used with the Linux kernel. EXT 4 is the most recent version of EXT.
EXT4 has the following properties:
-
EXT4 can support volumes up to 1 EiB.
-
16 TiB maximum file size.
-
Red Hat recommends using XFS (not EXT4) for volumes over 100 TB, depending on the release.
-
EXT4 is backwards compatible with EXT2 and EXT3.
-
EXT4 can pre-allocate disk space.
-
By default, Windows and macOS cannot read EXT file systems.
Unit Conversions
- Exbibyte (EiB) - 1 exbibyte = 1.153e18 bytes = 1152921504606846976 bytes = 1,024 pebibytes
- Pebibyte (PiB) - 1 pebibyte = 1.126e15 bytes = 1125899906842624 bytes = 1024 tebibytes
- Exabyte (EB) - 1000000000000000000 bytes = 1e18 bytes = 1 million terabytes = 1 billion gigabytes
- Terabyte (TB) - 1000000000000 bytes = 1e12 bytes = 1000gigabytes