-1

Размер таблицы размещения файлов (FAT) зависит от количества кластеров, используемой версии и размера используемого тома. Например, том с размером 8 ГБ и отформатированный как FAT32 с кластером размером 4096 байт будет иметь 2 ^ 21 кластеров. Теперь размер FAT будет равен number of clusters * address size of a cluster . Размер адреса каждого кластера - это количество бит, необходимое для хранения адреса. Теперь, поскольку это FAT32, это будет 32 бита . Таким образом, размер FAT будет 2^21 * 4(in bytes)= 2^23 bytes . Максимальное количество адресов кластера в FAT будет 2 ^ 28, так как 4 бита используются для специальных целей.

Файл 4 ГБ будет охватывать более 2 ^ 20 кластеров. Общее количество доступных кластеров составляет 2 ^ 21. Теперь, если мы увидим какой-либо файл (размер 4 ГБ), первый номер кластера, с которого начинаются данные файла, будет доступен в корневом каталоге, если этот файл находится в корневом каталоге. Кроме того, другие таблицы, связанные с первым кластером (где находится файл), могут быть получены из таблицы размещения файлов (FAT). Так в чем же проблема, у нас есть 2 ^ 21 кластеров и 2 ^ 20 кластеров требуются для файла размером 4 ГБ. Это должно быть в состоянии сохранить это. Почему бы и нет?

Приведенная выше информация основана на том, что я знаю.

1 ответ1

1

Скорее всего, потому что каждый файл определяется своей записью в каталоге, которая имеет 32-битное значение "размер файла в байтах", см. Https://en.wikipedia.org/wiki/Design_of_the_FAT_file_system#Directory_entry

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .