поиск смещения корневого каталога из данных основной загрузочной записи в файловой системе FAT32

Я пытаюсь понять файловую систему FAT32, и в настоящее время я написал код на C и могу прочитать таблицу разделов и данные основной загрузочной записи с образа диска SDHC-карты (созданного с помощью шестнадцатеричного редактора).

изображение

Теперь я хочу найти местоположение корневого каталога из приведенных выше данных, чтобы я мог прочитать структуру каталогов.

может ли кто-нибудь помочь мне понять, как это сделать?


person Majeed Khan    schedule 20.06.2016    source источник
comment
Может быть, clust_num_of_start_of_root_dir стоит изучить подробнее?   -  person Some programmer dude    schedule 20.06.2016
comment
И пожалуйста, не размещайте изображения (особенно в виде ссылок) в тексте. Вместо этого скопируйте и вставьте текст в тело вопроса. Пожалуйста, прочитайте о том, как задавать хорошие вопросы.   -  person Some programmer dude    schedule 20.06.2016
comment
Отличный проект, см. wiki.osdev.org/FAT#FAT_32 для справки (он был тщательно обсуждалось)   -  person Ishay Peled    schedule 20.06.2016
comment
спасибо @IshayPeled за ресурс. Я посмотрю на это.   -  person Majeed Khan    schedule 20.06.2016


Ответы (1)


Это работает для геометрических носителей данных, придумайте что-то эквивалентное для вас.

RootDirSectors = ((BPB_RootEntCnt * 32) + (BPB_BytePerSec -1))/BPB_BytePerSec;
person Amit Kumar    schedule 08.07.2016