The Windows operating system supports several file systems: NTFS, FAT, and FAT32. However, it can only be installed on an NTFS partition—meaning the system must be installed on a hard disk partition that has been formatted with the NTFS file system.
This requirement is due to the security features and tools provided by NTFS, which are not available in earlier Windows file systems like FAT16 and FAT32.
In the following sections, we’ll take a closer look at the full range of Windows file systems to understand their roles in the system’s operation and how they have evolved throughout the development of Windows.
General Overview of File Systems
The advantages of NTFS affect nearly everything: performance, reliability, and the efficiency of working with data (files) on a disk. One of the primary goals behind the creation of NTFS was to ensure high-speed execution of file operations (copying, reading, deleting, writing), as well as to provide additional features such as data compression, recovery of corrupted system files on large drives, and more.
Another key reason for developing NTFS was to meet increased security requirements, as the FAT and FAT32 file systems were entirely inadequate in this regard. NTFS allows you to permit or deny access to specific files or folders (i.e., set access permissions).
We’ll begin with a comparative overview of file systems, followed by a closer look at each one. For better clarity, the comparisons are presented in table format.
The FAT file system is simply not suitable for modern hard drives due to its limitations. FAT32 can still be used in some cases, but it’s becoming increasingly impractical.
For example, if you purchase a 1000 GB hard drive, you’ll need to divide it into several partitions. And if you’re doing video editing, the 4 GB file size limit will be a significant problem.
NTFS, on the other hand, does not suffer from these limitations. So, even without going into the technical details and advanced features of the NTFS file system, it’s easy to see why it’s the better choice.
File System | Settings | |
---|---|---|
Volume sizes | Maximum File Size | |
FAT | From 1.44 MB to 4 GB | 2 GB |
FAT32 | Theoretically, the volume size can range from 512 MB to 2 TB. Compression is not supported at the file system level. | 4 GB |
NTFS | The minimum recommended size is 1.44 MB, and the maximum is 2 TB. File system-level compression is supported for files, directories, and volumes. | The maximum size is limited only by the volume size (Theoretically – 2⁶⁴ bytes minus 1 kilobyte; Practically – 2⁴⁴ bytes minus 64 kilobytes). |
Using FAT32 is generally only justified in cases where your computer has multiple operating systems installed, and one of them does not support NTFS. However, nowadays, such cases are extremely rare—unless you want to install something antique like Windows 98.
The FAT File System
The FAT file system (usually referring to FAT16) was developed quite a long time ago and was intended for working with small disk and file volumes using a simple directory structure. The acronym FAT stands for File Allocation Table. This table is located at the beginning of the volume, and two copies of it are stored to increase reliability.
This table is used by the operating system to find files and determine their physical location on the hard drive. If the table (and its backup) gets corrupted, the OS can no longer read files. It simply can’t determine where a file starts or ends. In such cases, it’s commonly said that the file system has “crashed.”
FAT was originally designed by Microsoft for floppy disks. It was later adapted for use on hard drives. At first, there was FAT12 (for floppies and hard drives up to 16 MB), which later evolved into FAT16, introduced with MS-DOS 3.0.
Subsequently, FAT16 was supported in Windows 3.x, Windows 95, Windows 98, Windows NT/2000, and so on.
FAT32 File System
Starting with Windows 95 OSR2, Microsoft began actively using FAT32—a 32-bit version of the FAT file system—in its operating systems. As technology progressed, the capabilities of FAT16 became clearly insufficient.
Compared to FAT16, FAT32 provided more efficient disk access, faster input/output operations, and support for much larger volumes (up to 2 TB per disk).
FAT32 also introduced more efficient use of disk space by utilizing smaller cluster sizes. The storage efficiency gained over FAT16 is approximately 10–15%. This means that using FAT32, you can store 10–15% more data on the same disk compared to FAT16.
Additionally, FAT32 offers greater reliability and faster program startup speeds. These improvements are due to two major innovations:
-
The ability to relocate the root directory and the backup copy of the FAT (in case the main copy gets damaged).
-
The capability to store a backup of system-critical data.
NTFS File System
None of the FAT versions provide even a minimal acceptable level of security. This, along with the growing need for advanced file system features like compression and encryption, led to the development of a fundamentally new file system: NTFS (New Technology File System).
NTFS – New Technology File System. As mentioned earlier, NTFS’s primary advantage is security: files and folders in NTFS can have access permissions assigned (e.g., read, write, etc.). This significantly improves data protection and system stability.
Access permissions allow you to restrict or grant operations on files to specific users and programs. For example, a user without proper rights won’t be able to modify a file, and a virus lacking sufficient permissions won’t be able to corrupt it.
In addition to security, NTFS offers better performance and the ability to work with large volumes of data.
Starting with Windows 2000, NTFS version 5.0 was introduced, which includes advanced features beyond the standard set:
-
Data encryption — Implemented via a special NTFS extension called Encrypting File System (EFS). With EFS, encrypted files can only be read on the computer where they were encrypted.
-
Disk quotas — Allows administrators to allocate a limited amount of disk space per user.
-
Sparse file support — Optimizes storage for files containing long sequences of empty (zero) bytes.
-
Change journaling — Keeps a log of all file and volume access operations, useful for backup and recovery.
Another notable feature of NTFS is mount points. Mount points allow unrelated folders or even entire drives to appear as part of a single directory structure. This is particularly useful for centralizing scattered data within a system.
Important note: If a file with NTFS-specific permissions and attributes is copied to a FAT partition, all of those permissions and attributes will be lost. So be cautious when transferring data between file systems.
NTFS Structure: The Master File Table (MFT)
Like any other file system, NTFS divides usable disk space into clusters—the smallest unit of storage allocated to hold data. NTFS supports a wide range of cluster sizes, from 512 bytes to 64 KB, though the standard and default size is 4 KB.
To illustrate how clusters work: If your cluster size is 4 KB (which is most likely), and you save a file that’s 5 KB in size, 8 KB of space will actually be used. This is because files can only be allocated in whole clusters, and 5 KB won’t fit into a single 4 KB cluster.
Each NTFS-formatted volume includes a special file called the MFT (Master File Table). This file serves as a centralized index of all files on the disk. When a new file is created, NTFS generates a corresponding entry in the MFT, which contains metadata about the file—its attributes, name, content information, and more.
Besides the MFT, there are 15 other special files (making 16 in total) known as metadata files. These are inaccessible to users through standard system tools and their names begin with a “$” symbol. Here are some of the most important metadata files:
-
$MFT – The Master File Table itself
-
$MFTMirr – A mirror of the first 16 entries of the MFT, typically stored in the middle of the disk
-
$LogFile – Contains the NTFS journal for tracking file system changes
-
$Volume – Stores volume-specific information like the volume label and file system version
-
$AttrDef – Defines all standard file attributes
-
$Root ($) – The root directory
-
$Bitmap – A bitmap that keeps track of used and free clusters
-
$Boot – Contains boot code and boot sector (if the volume is bootable)
-
$Quota – Stores disk quota data for user storage limits
-
$Upcase – A Unicode case-mapping table used to perform case-insensitive comparisons for file names
This $Upcase file is crucial because NTFS stores file names in Unicode, which includes over 65,000 characters, and performing case-insensitive searches in such a character set is non-trivial.
The NTFS disk is logically divided into two parts. The first 12% of the disk is reserved as the MFT Zone—a dedicated area for the MFT to grow into. This area cannot be used to store regular user data under normal conditions. It’s intentionally kept empty to minimize MFT fragmentation as the table expands over time. The remaining 88% of the disk is used for standard file storage.
If disk space runs low, Windows can shrink the MFT zone, allowing user files to be stored there temporarily. Once space is freed up, the MFT zone can grow again, although it may now be fragmented, spread across multiple locations on the disk. This isn’t ideal, as non-fragmented MFT leads to better system performance and reliability.
The more fragmented the MFT becomes, the slower the file system may perform.
The size of the Master File Table is generally estimated at about 1 MB for every 1,000 files on the volume.
Converting FAT32 Partitions to NTFS Without Data Loss: The convert Utility
You can easily convert an existing FAT32 partition to NTFS without losing any data. Windows 10 includes a built-in command-line utility called convert
for this purpose.
The available parameters are shown in the screenshot.
To convert drive D: to NTFS, open Command Prompt and enter the following command:
convert d: /fs:ntfs /v
After running the command, you’ll be prompted to enter the volume label if one exists. The volume label can be seen next to the drive name in This PC (or My Computer). It helps identify drives more clearly but is optional.
For example, in “Files Storage (D:)”, Files Storage is the volume label for drive D:.
To convert a USB flash drive, use the following command:
convert e: /fs:ntfs /nosecurity /x
Here, e: is the drive letter of your flash drive.