For example: The maximum volume is 8 TiB (with 32 KiB clusters) and 16 TiB (64 KiB clusters)
2 Answers
File systems split data into blocks called clusters that are the smallest addressable unit. However the maximum number of addressable clusters is fixed (depending on how many bits are used for the address), so if the cluster is larger, the maximum partition size is also larger
In FAT16 the address is 16-bit long, so there are maximum ~216 clusters (slightly less since some addresses are reserved for special purposes). For example with 2KB clusters the maximum volume size will be ~216 × 2KB = 216 × 2•210 = 227 bytes = 128MB. Similarly with 64KB clusters the largest possible FAT16 volume is 4GB
In FAT32 the address is 28-bit long (not 32-bit). With 32KB clusters the maximum size is ~228 × 32KB = 228 × 32•210 = 243 bytes = 8TB
- 26,555
- 15
- 113
- 235
Because FAT allocates space in terms of whole clusters – not bytes – and so the limit comes from the number of clusters on the volume. (For example, FAT32 has a 28-bit field for the cluster number, so it can only use at most 228 clusters.)
So in the formula…
volume size = cluster count * cluster size
…the same cluster count, multiplied by different cluster sizes, will give you different total sizes.
Note that there are two limits that FAT filesystems are subject to – the 32-bit field for physical disk sectors (which are usually 512b or 4K) and the 28-bit field for logical FAT clusters (which are of variable size). The filesystem size limit is always the minimum of both limits, so on a 512b sectored disk you'll still be capped to 2TiB maximum, no matter how large you make the FAT clusters.
- 426,297
- 64
- 894
- 966