Не приводит ли фрагментация в файловой системе FAT к пустой трате места?

В википедии для статьи о фрагментации говорится:

Во многих случаях фрагментация приводит к тому, что пространство хранения «тратится впустую», и в этом случае этот термин также относится к самому неиспользуемому пространству. Для других систем (например, файловой системы FAT) пространство, используемое для хранения определенных данных (например, файлов), одинаково независимо от степени фрагментации (от нулевой до крайней).

Означает ли это, что в случае файловой системы FAT пространство для хранения не тратится впустую? Если да, то как это сделать?


person user3740387    schedule 11.03.2015    source источник


Ответы (1)


Насколько мне известно, большинство «нетрадиционных» файловых систем Unix и FAT используют растровое изображение распределения для определения свободного места на диске и некоторые формы дескрипторов файловых экстентов. Для каждой непрерывной области файла требуется отдельный дескриптор. Если файл полностью непрерывен, ему нужен только один дескриптор экстента.

В FAT таблица размещения файлов выполняет функцию растрового изображения и дескрипторов в одном лице. Вместо массива битов, указывающих распределение, это массив, содержащий значения (размер зависит от варианта FAT), указывающие на использование (например, следующий кластер файла, кластер неисправного диска) соответствующего дискового кластера.

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

В растровых системах количество накладных расходов может быть меньше, чем в FAT.

Означает ли это, что в случае файловой системы FAT пространство для хранения не тратится впустую? Если да, то как это сделать?

Это зависит от вашей точки зрения. Можно сказать, что FAT всегда тратит место впустую.

Я думаю, вы обнаружите, что FAT прост в реализации, но, как правило, имеет относительно низкую производительность.

person user3344003    schedule 12.03.2015
comment
Пожалуйста, поправьте меня, если я неправильно истолковал ваш ответ. Но вы, похоже, считаете потраченное впустую пространство пространством, используемым для хранения метаданных о распределении. Насколько мне известно, неиспользуемое пространство в случае фрагментации относится к неиспользуемому пространству, которое настолько мало, что никакие данные не могут вместиться в него, или в случае внутренней фрагментации пространство, потерянное на последней не полностью заполненной странице. - person user3740387; 13.03.2015
comment
Диск всегда может использовать небольшие кусочки пространства после фрагментации. Он просто становится все более неэффективным в использовании. Я ожидаю, что они имеют в виду потраченное впустую пространство в таблицах размещения файлов. - person user3344003; 13.03.2015