Sebenarnya ada beberapa varian "FAT16" selama bertahun-tahun dengan batas yang berbeda tetapi mari kita pertimbangkan versi yang bertahan dari "compaq DOS 3.31" hingga windows 95.
Volume FAT dibagi menjadi beberapa kelompok. Setiap cluster terdiri dari kekuatan dua sektor. Jumlah sektor per cluster pada FAT16 disimpan sebagai angka yang ditandatangani 8 bit. Jadi sektor maksimum yang mungkin per klaster adalah 64.
Nomor cluster disimpan sebagai nilai unsigned 16 bit. Membatasi total kluster menjadi 65536. Lipat gandakan dengan sektor maksimum per kluster dan Anda mendapatkan batas 4.194.304 sektor.
Ukuran sektor (logis) dari hard drive adalah 512 byte. Lipat gandakan dengan batas jumlah sektor yang disebutkan di atas dan Anda mendapatkan batas 2GiB Anda. Pada prinsipnya media dengan ukuran sektor yang lebih besar dapat mendukung volume FAT16 yang lebih besar tetapi saya tidak berpikir ini terjadi dalam praktik.
Windows NT mengubah interpretasi bidang "sektor per klaster" menjadi 8 bit yang tidak ditandai. Hal ini memungkinkan partisi FAT16 4GiB dengan sektor 512 byte (dan secara teoritis lebih besar pada drive dengan sektor yang lebih besar). AIUI windows 98 menambahkan dukungan untuk membaca dan menulis partisi seperti itu tetapi tidak dapat membuatnya dan utilitas disk tidak dapat memperbaikinya.
Tentunya mungkin untuk melakukan sedikit perubahan kecil pada format sistem file untuk mendukung kluster yang lebih besar dan karenanya volume yang lebih besar. Namun MS memutuskan untuk memilih opsi yang lebih radikal untuk pindah ke indeks cluster 32-bit dengan windows 95 OSR2 yang menghasilkan FAT32.
Saya percaya alasan untuk memilih opsi yang lebih radikal adalah efisiensi ruang. Mengingat filesizes khas pada saat 32kiB cluster sudah cukup boros dan yang lebih besar bahkan akan pindah begitu.