Как определить FAT16 или FAT32 из загрузочного сектора

Есть ли способ определить тип раздела FAT (если он 16 или 32) только путем чтения его загрузочного сектора?

Благодарю.

1 ответ

Не читая загрузочный сектор - вам нужно заглянуть в саму файловую систему.

Найдите количество кластеров. Подтип файловой системы можно определить по этому номеру:

менее 4086: FAT12

равно или больше 4086: FAT16

более 65525: FAT32

Если количество секторов на слово FAT в FAT12/FAT16 BPB равно нулю, это FAT32. (Независимо от фактического размера FAT, FAT32 использует секторы EBPB на двойное слово FAT.) Аналогичным образом, если число слов корневых записей каталога равно нулю, это FAT32.

Другие вопросы по тегам