i have two questions about FAT32 ,
The first if i want to format a partition with FAT32 using 32KB block size i think the maximum partition size i can get is :
2^28 * 32 = 8TB
but why i see them list it as the maximum partition size is 2TB in every reference and windows limit it to 32 GB only ?!
the second question , if I want to know the size of the FAT Table in memory (To know memory consumption ) assuming I'm use 32 GB partition size with 32 KB block size , how to calculate that ?!
this is what I know ,but not sure about it :
- First I have to know the number of entries which is
32GB/32KB=1,048,576
- Second I have to find the size of table which is
1,048,576 * 32 bit each = 4 MB
(or should I multiply with 28)
so is the above calculations are right ?!
Regards
The largest FAT32 partition size Microsoft "supports" is 32 GB. You can make them bigger but under certain conditions Windows will arbitrarily delete them. I had it happen and wasn't pleased so I looked up why, that was maybe about 2005.
They can be considerably bigger but it's not safe if the drive might get connected to Windows. Use NTFS/exfat or don't use Windows. When FAT32 was relatively new I remember reading some Microsoft document talking about the benefits and giving a much larger theoretical upper limit.
I don't think a FAT gets stored in memory often except maybe by some utility programs. If you're reading or writing a file there's no huge advantage in knowing the offset of the next sector until you get ready for it. The FAT is like a lookup table. If the space is fragmented it will be slower, keeping it in memory could help there.