В рамках регулярного обслуживания Windows я дефрагментирую свой жесткий диск. Но почему жесткий диск фрагментируется в системах NTFS и FAT *? Кажется, ext * нет, почему это? Должен ли я также дефрагментировать мои USB-накопители?
В рамках регулярного обслуживания Windows я дефрагментирую свой жесткий диск. Но почему жесткий диск фрагментируется в системах NTFS и FAT *? Кажется, ext * нет, почему это? Должен ли я также дефрагментировать мои USB-накопители?
Ответы:
Фрагментация не та проблема, которой она была 30 лет назад. Тогда у вас были жесткие диски, которые были чуть быстрее, чем дискеты, и объемы памяти процессора были крошечными. Теперь у вас очень быстрые диски и большой объем памяти процессора, а иногда и существенная буферизация на жестком диске или в контроллере. Плюс размеры секторов стали больше (или файлы размещены в больших блоках), так что больше данных по своей природе являются смежными.
Операционные системы также стали умнее. В то время как DOS 1.x извлек бы каждый сектор с диска в том виде, в котором на него ссылались, современная ОС может увидеть, что у вас есть файл, открытый для последовательного доступа, и может разумно предсказать, что вы будете извлекать дополнительные сектора после того, как вы использовали те, что у вас есть сейчас. Таким образом, он может «предварительно извлекать» следующие несколько (десяток) секторов.
И часто лучше не иметь смежных файлов. В (большой) системе, где файловая система распределена по нескольким дискам, к файлу фактически можно получить доступ быстрее, если он также «распределен», поскольку несколько дисков могут искать файл одновременно.
Я дефрагментирую каждые 2-3 года, нужна ли моя коробка или нет.
[Я добавлю, что важно не столько дефрагментация данных на диске, сколько свободное пространство. FAT был ужасен в этом - если вы не дефрагментируете, все будет становиться все хуже и хуже, пока не будет двух смежных блоков свободного пространства. Большинство других схем могут объединять свободное пространство и распределять фрагменты несколько «умным» образом, так что фрагментация достигает определенного порога и затем стабилизируется, а не становится все хуже и хуже.]
ВСЕ фрагмент файловой системы. ext и другие файловые системы Linux меньше фрагментируются благодаря тому, как они спроектированы - цитируя Википедию относительно Руководства сетевого администратора Linux :
Современные файловые системы Linux поддерживают минимальную фрагментацию, сохраняя все блоки в файле близко друг к другу, даже если они не могут быть сохранены в последовательных секторах. Некоторые файловые системы, такие как ext3, эффективно выделяют свободный блок, ближайший к другим блокам в файле. Поэтому нет необходимости беспокоиться о фрагментации в системе Linux.
Хотелось бы отметить, что ext4 имеет оперативную дефрагментацию, поэтому в конечном итоге фрагментация становится проблемой, даже с файловыми системами Linux.
Файловые системы Windows размещают свои кластеры там, где есть место для их размещения, и дефрагментация запускается и заменяет их. В Linux файлы размещаются преимущественно там, где достаточно места.
Хотелось бы отметить, что в Windows 7 запланированы дефрагментация, поэтому запускать дефрагментацию вручную не обязательно.
ext*
не дефрагментирует по мере продвижения. trac.transmissionbt.com/ticket/849 и h-online.com/open/features/… . ext*
минимизирует фрагментацию, храня непрерывные данные в произвольных местах на диске. Случайные смещения распределяют смежные файлы по всему диску и уменьшают необходимость фрагментации файла.