The WinFS File System For Windows Longhorn: Faster & Smarter

Clusters, Sectors & Tables

All readable and writeable disks need a file system - usually a FAT (File Allocation Table). That is especially true of hard drives, but is also the case for CDs and floppies. The data system is responsible for naming, storing and retrieving data using a robust management system. While there are differences in how they partition volumes and encrypt files, the current batch of Windows file systems have two things in common: they're restricted by their use of clusters and by limits on the amount of data they can handle.

A cluster is the smallest possible storage unit on a hard drive. But the sectors are what determines how many Bytes of memory space are physically available for the files. Depending on the partition, you will have one or more sectors of 512 Bytes each in one cluster. 4 kB of memory normally contains eight sectors. The cluster size is generally determined by the file system and the size of the volumes. You can adjust automatic cluster allocation with tools such as Fsutil, but only on Windows XP. For FAT systems, the rule of thumb is that the smaller the cluster size, the better the hard-drive utilization.

Here's an example: Windows 95 users rely on the FAT 16 file system. With small partitions of up to 256 MB the cluster size is 4 kB, while in larger, 2 GB partitions they are 32 kB. A file of 35 kB would occupy two clusters in the last case, leaving 29 kB unused in the second cluster since you can only have one file using each cluster. To put it another way: if a hard drive contained 1000 files of 40 kB each, it would only occupy 391 MB of a 500 MB FAT 16 partition. On a 1.2 GB partition, the same 1000 files would take up more than 620 MB of disk space. The File Allocation Table (FAT) then allocates the files to the clusters. Each entry in the table represents one cluster allocation. The table makes do with information on the start of a file, the numbers of the next cluster, and the identification of the last cluster. The system creates a double copy of the FAT as a backup. On FAT 16 and FAT 32 systems, the table is on the disk's outermost track. With NTFS, the table itself is organized into files.