Friendly Expert Computer Help - In Plain English
As Seen On TechTV
PC911 > How-To > Miscellaneous > FAT/FAT 32

- Alex -

Download this article as a self-extracting text file
View this article in printer-friendly plain-text format
E-mail this article to a friend

What is FAT/FAT 32?

When you get a new hard drive, it will be a clean slate. It has no information on it, and won't be able to hold any information yet. Imagine having a new office with blank walls, no shelves or cabinets, nothing. In order to be able to store files in an organized manner, you first need to decide how you want to store the files, in cabinets, or on shelves, how many shelves or cabinets, what size etc. and then make that organization system available by installing shelves or cabinets.

The same thing applies to a new hard drive. Before you can store information on it, you need to decide how the drive is to be organized. There are many different file systems out there because each operating system supports different ones, such as the UNIX file system, the Windows NT file system NTFS, Windows 98 FAT 32, Windows 95 and Windows 3.1 FAT 16, etc.


Windows 3.1 works with FAT 16
Windows 95 Build 950 and 950a works with FAT 16
Windows 95 Build 950b and 950c works with FAT 32 and FAT 16
Windows 98 works with FAT 32 and FAT 16
Windows NT 4 works with NTFS and FAT 16
Windows 2000/NT 5 works with NTFS, FAT 32 and FAT 16

When you get the hard drive, you first need to run a command called FDisk from a DOS prompt. If you run this utility on a hard drive that is bigger than 512MB, you will be asked whether you want to enable large disk support. That question is where you decide. If you answer Yes, FDisk will use FAT32 - if you say No, it will use FAT16. Then you need to create at least one partition on the drive, reboot, and format it.

After formatting it, you can now store information on the drive. To keep track of what's on the drive, a table of contents is needed and that's where FAT comes is. FAT stands for File Allocation Table.

The Math

Let's do some math to understand the difference between FAT (or more exact FAT 16) and FAT 32. When you partition and format the drive, it is being organized into a lot of cubby holes, so to speak. Those are called clusters, which are numbered by the FAT to keep track of them and what's in them. FAT 16 uses a 16 bit number to number them, and the highest number you can display using 16 bits, is 2^16 = 65,536.

The biggest possible size each cluster can be is 32,768 Bytes. Therefore, if you take the maximum number of clusters - 65,536 - times the maximum cluster size - 32,768 Bytes -, you get the maximum hard drive size FAT can handle - 2,147,483,648 Bytes.

Bytes is a pretty ugly number, too many digits. To make it more manageable, you need to understand that computers use binary systems, which means all numbers are based on 2. Here's how you convert Bytes to Kilo Bytes to Mega Bytes etc.:

1 Kilo Byte (KB) is 1024 Bytes - 2^10

1 Mega Byte (MB) is 1024 KB - 1024 * 1024 - which is 1,048,576 Bytes - 1024 * 1024 * 1024

1 Giga Byte (GB) is 1024 MB - 1024 * 1024 * 1024 - which is 1,073,741,824 Bytes

Do hard drive vendors lie?

You might notice that the new hard drive that you installed, gives you less than the amount of storage space advertised. Why is that? Well, the marketing department of the vendor doesn't know too much about bits and bytes and binary system. To make it easier to calculate, they assume that 1 KB is 1000 Bytes, 1 MB is 1000 KB, etc. which of course is wrong as you just learned a minute ago. So when they have a drive that can hold 8,400,000,000 Bytes, they just call it 8.4 GB and say that's close enough for government work. Not so.

To figure out the correct size of that drive, divide 8,400,000,000 Bytes by 1024 and you'll get 8,203,125 KB. Divide that by 1024, and you get 8,010 MB. Divide that by 1024 and you get 7.82 GB which is the actual size of your hard drive in GB. That's several hundred MB off from the 8.4 GB you though you would get.

Try it out for yourself. Use the byte converter below to calculate the actual size of your hard drive. For example, if you have an 8.4 GB drive, enter 8400000000 (no commas) in the Byte field and press the button underneath to see how many Gigabyte it converts to.

Byte Kilobyte Megabyte Gigabyte

1 Byte = 8 Bit
1 Kilobyte = 1024 Bytes
1 Megabyte = 1024 Kilobytes = 1048576 Bytes
1 Gigabyte = 1024 Megabytes = 1073741824 Bytes

The Byte Converter by Malte Philipp

Anyway, back to FAT 16. We calculated that the maximum hard drive size FAT can handle is 2,147,483,648 Bytes. Using the math explained above, this turns out to be 2048 MB or 2 GB. If you try to format a drive bigger than 2 GB using FAT 16, you will never get more than 2 GB because of this limitation. As a result, you would need to partition the drive into smaller logical drives, each no bigger than 2 GB, to take advantage of its capacity. If you have a big drive, you end up with a lot of drives this way.

Now FAT 32 comes into play. It uses a 32 bit number to keep track of the clusters, and the highest number you can display using 32 bits is 2^32 = 4,294,967,296. A LOT bigger than 65,536, isn't it? Therefore it can track a lot more clusters on much bigger hard drives, theoretically up to 2 Tera Bytes. This means that the limit of 2 GB per partition/drive no longer exists with FAT 32. You can now make a 10 GB hard drive one big drive instead of having to separate it into 5 2 GB partitions.

Another advantage of FAT 32 is that because of its capability of tracking so many clusters, you can divide the same drive into much smaller clusters. The reason this is very useful is this:

Let's say you have a 2 GB drive, formatted it using FAT 16, and end up with 65,536 clusters, each one 32 KB in size. If you store now a small text file that is only 1 KB big in that cluster, the other 31 KB of that cluster are wasted free space, since there can be only one occupant per cluster. If you store a file that is 33 KB on the drive, it will use two full clusters, one for 32 KB and one for the remaining 1 KB. Again, 31 KB are wasted.

If you format that 2 GB drive using FAT 32, the clusters will be a lot smaller, 4 KB, and there will be a lot more of them. That means if you store that 1 KB text file on the drive, only 3 KB will be wasted, not 31 KB. And if you store that 33 KB file on the drive, it will use 9 clusters to store it, but the last one will only waste 3 KB, not 31. A major difference.

This can be of great help when you are running low on hard drive space because it uses the drive space so much more efficiently. I have converted many drives from FAT 16 to FAT 32, and it always resulted in several hundred MB of wasted space recovered and turned into free space, usually 10-15%.

OK, now that we know all that theory, let's talk about how to create a FAT 32 drive and how to convert a FAT 16 drive to FAT 32.

Back To Top Of Page