Всем доброго утра!
Хотелось бы у Вас спросить по поводу фрагментации и дефрагментации.
В моём понимании, фрагментация - это не когда между объектами есть свободное место.
А когда объекты разделены на кластеры, путь к которым проходит через другие кластеры.
Процесс дефрагментации позволяет собрать кластеры объекта в одном месте.
Но мне интересно, как же программа дефрагментации производит эти манипуляции. Как осуществляется дефрагментация в
FAT? Про
NTFS даже думать не хочу, тем более что сколько не пытался в
Windows 7 выполнить дефрагментацию, она оказывалась всегда не нужной. Такое ощущение, что
Windows 7 дефрагментацию сам выполняет в фоновом режиме когда ему это нужно.
Просто дефрагментацию - это перемещение кластеров в другое место, то есть копирование. А для копирования нужно чтобы место свободное уже было. Ведь так придётся уже какой-то кластер копировать в резервный кластер, кластер где он был раньше очищать и на его место копировать данные другого кластера. И при этом нужно переуказывать индексы следующих кластеров в цепочках и переуказывать индексы кластеров начала цепочек в самих записях объектов. Тут уже если произойдёт сбой, будет не поправимое (по крайней мере для
FAT, как мне кажется).
Может кто-нибудь рассказать как производится дефрагментация?