Studying for the A+, Network+ or Security+ exams? Get over 2,600 pages of FREE study guides at CertiGuide.com!|
Join the PC homebuilding revolution! Read the all-new, FREE 200-page online guide: How to Build Your Own PC!
NOTE: Using robot software to mass-download the site degrades the server and is prohibited. See here for more.
Find The PC Guide helpful? Please consider a donation to The PC Guide Tip Jar. Visa/MC/Paypal accepted.
|View over 750 of my fine art photos any time for free at DesktopScenes.com!|
Relationship of Partition Size and Cluster Size
Since the size of the FAT is fixed, there is a hard maximum on the number of clusters that the FAT can hold. The maximum depends on the size of FAT used by the volume. For FAT12 partitions it is only 4,086; for FAT16 it is 65,526, and for FAT32 it is in the hundreds of millions.
FAT12 is only used for very small partitions, so it isn't really very interesting in terms of an analysis of partition and cluster size; virtually no hard disks today use partitions below 16 MB, which is FAT12's limit. The place where partition size and cluster size begin to interact is in the use of FAT16, the standard FAT type used for hard disk partitions between 16 MB and 512 MB in size, and used for drives up to 2,048 when FAT32 is not supported. The partitioning utility that you use to create your disk partitions will normally make the decision of what cluster size to use, by trying to use the smallest possible clusters in order to reduce slack. Since FAT16 is limited in size to 65,525 clusters, what happens is that each cluster size has a maximum partition size that it can support. If you want to make a partition larger than that maximum, you are forced to go up to the next larger cluster size.
The table below shows the FAT16 partition limits (a similar table for FAT32 can be found here). The values are simply 65,526 times the cluster size, in bytes. It's important to realize that since there are only 65,526 clusters maximum, which is less than 64 kiB (65,536), the maximum partition sizes fall short of the "round" MB numbers that everyone always uses. Thus the maximum partition size for 8 kiB clusters is 511.92 MiB, not 512 MiB:
Note: Windows NT supports a
64 kiB cluster size in FAT16, allowing a maximum partition of just under 4,096 MB. The
amount of slack waste in a partition of this size is astronomical, and since the 64 kiB
cluster partitions aren't supported by Windows 9x/ME or other FAT-using operating systems,
this isn't a popular option. I would recommend using NTFS
under NT for a partition this large, or FAT32 under Windows 2000.
Despite what you will read in many articles, there really is no hard-set minimum for these cluster sizes. (Mind you, I've never tried a really teeny partition; I'm sure there is some limit, but it's much smaller than most people usually say it is). It sometimes appears that 512 MB is the minimum size for a 16 kiB cluster size partition, for example, because most utilities are pre-programmed to always pick the smallest possible cluster size, in order to cut down on slack. This means that if you use FDISK for example to create a partition that is 300 MB in size, it will always pick 8 kiB for the cluster size and not 16 kiB or 32 kiB. But that doesn't mean you can't have a 300 MB partition that uses 32 kiB clusters; Partition Magic will let you set this up if you want, and in certain special cases you may in fact want to (although usually not).
What does this all mean in terms of setting up your hard disk? It generally means that if you are using FAT16 (as opposed to FAT32) and have a hard disk that is greater than about 512 MB in size, you need to carefully consider how many partitions you want to use for it. If you are using a hard disk that is larger than 1,024 MB in size (this generally means a 1.2 GB or larger hard disk, since hard disk manufacturers specify disks in decimal GB) then you are strongly advised to partition your hard disk into more than one volume to avoid the tremendous slack space waste of partitions that use 32 kiB clusters. Of course, if your operating system supports FAT32, you should just use that.