FAT32 vs. NTFS

Windows XP supports two kinds of file systems: FAT32 and NTFS. The FAT32 system was introduced with the Windows 95 OSR 2, while the NTFS is the native system of Windows NT, Windows 2000/2003 and Windows XP. The FAT32 system uses a file allocation table (FAT) to store the use of each cluster in a disk. In the FAT32 system the files are stored in clusters (set of sectors) and in the allocation table there is a register of which clusters are in use by each file in the disk. Each entry in the allocation table points to the next cluster that represents the file (in case the file takes more than one cluster). For example, imagine that a file called System.txt is stored in the disk in clusters 10, 11, 12, 13, 14 and 15. The first cluster of a file in the FAT system is stored in a structure called directory. The other clusters are stored in the allocation table. Thus, the directory points out “10” as initial cluster. In the allocation table, the position 10 will point out to the next cluster in the chain that represents the file, in our example, cluster 11. Position 11 will point the value 12, and so on. The last cluster in a sequence that represents a file has a special marker, called EOF (End Of File). In short, if a file is stored in more than one cluster in the FAT32 system, each cluster where the file is stored in contains a pointer to the next cluster in the chain.

As the FAT32 system, NTFS also uses a table – called MFT (Master File Table) – to register the use of each cluster in a disk. That table contains much more information about the files than the FAT table, which stores just the clusters that compose the file.

The NTFS system has characteristics that are not presents in FAT32 system and which make this system ideal for applications that demand more security and control, which is the case of network servers. Those characteristics include:

  • File encryption
  • Disk quota
  • Mounted drives
  • Data compression
  • Log of transactions

The NFTS system is much safer and stable than the FAT32 system due to the way in which it was developed, and also due to a feature called Log of Transactions. Each NTFS partition keeps a log of transactions of every change made in the disk. This log is used to recover the system in case of problems in the disk.

The FAT32 system doesn’t have log of transactions. In case any problem happens in the disk (for example, the computer was turned off before completing a recording task) there won’t be any register of the last valid system configuration, which can result in a problem called cross-linked chains, that is when two or more files have the same clusters chain by mistake in FAT. For those reasons the FAT32 system is much more susceptible to problems than the NTFS.