Я - пользователь XP, и мне всегда было интересно, почему файлы становятся "фрагментированными", и почему вам не приходится заниматься дефрагментацией жесткого диска в Linux? Это что-то специфичное для Windows или пользователям Linux тоже приходится иметь дело с этой проблемой?

2 ответа2

0

Это не совсем специфично для Windows, это специфично для файловой системы ...

Как правило, некоторые из файловых систем на основе * nix дефрагментируются по мере их продвижения в фоновом режиме автоматически.

Что касается файловых систем на базе Windows ... Если вы можете себе представить запись тысячи байт различных файлов на жесткий диск в порядке 1-1000, вы затем удаляете файл, занимая 50-100, создавая разрыв в 50. Затем вам нужно написать 75 байтов, поэтому он заполнит 50-100, а затем записать 1001-1025.

Итак, новый файл 75 состоит из блоков 50-100 и 1001-25, что означает, что он фрагментирован в двух местах.

Теперь представьте, что они находятся на разных концах жесткого диска, может потребоваться время, чтобы добраться до всех из них, поэтому для дефрагментации он переместит части 50-100 и 1001-1025, чтобы занять слот 1001-1075.

Он также попытается переместить все вниз и закрыть все пробелы, чтобы не было промежутка между 50-100 после завершения всех файловых операций.

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

0

Это связано с тем, как реализована файловая система. В то время как вы МОЖЕТЕ хранить каждый байт документа длиной в миллион байт на диске, один за другим, это явно ужасно неэффективно (имейте в виду, что вам нужно записывать эти байты в память).

Таким образом, большинство файловых систем работают с понятием "блоки", скажем, 4 килобайта. Так что если у вас есть документ, занимающий 10 килобайт, он займет 3 блока. Последний блок будет заполнен только наполовину (это можно увидеть в свойствах файла в Windows). Сравните "размер" с "размером на диске").

Если вы позже добавите к этому документу, и следующий блок (это будет 3-й блок) будет занят чем-то другим, файловая система должна найти этот последний 1 блок в другом месте. Это фрагментация. Документ занимает 4 блока, но только первые 3 последовательны на диске. 4-й находится в другом месте. И это может привести к снижению производительности.

Теперь это "классическое" объяснение вашего вопроса. Существует много файловых систем, и они решают эту проблему различными способами.

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