
Комментарии 22
Да в Досе это помогало ускорить диск. В многозадачных операционных системах сложнее. Там выгоднее запрашиваемые данные располагать на одной дорожке и читать дорожку целиком тем более объём современных кешей позволяет. Для HDD время чтения одной дорожки сравнимо с временем перемещения дорожки к дорожке.
по-моему, одиночные HDD остались в домашних системах, а в более-менее серьезном проде - RAID. И там уже с дефрагментацией всё иначе. Не говоря уже о системах, отличных от FAT/NTFS. Статья хорошая, устарела лет на 20, а так да, тёплая, ламповая :)
Да в Досе это помогало ускорить диск.
Не только в DOSе. Вот этот парень имел наилучшую стратегию и алгоритм для упорядочивания:

Но он оказался заложником Win9x, где имел свой драйвер-прослойку для дисков. Когда майки всех вытолкнули на NT (с приходом XP), то я читал что для Norton Speed Disk M$ не сертифицировала этот драйвер и вынуждала использовать встроенный в систему API дефрагментации, это для которого сделали вот такой GUI сами M$:

Тут ещё скорее всего наложился переход с FAT на NTFS и всё такое.
Как по мне, для всех видов FAT для Win9x лучше, чем Norton Speed Disk 99/2000/2001 нет. Он быстр, у него отличный алгоритм сортировки, который заметно сокращает количество дисковых операций для переноса и упорядочивания данных. Да и сам процесс дефрагментации крайне быстр. А вот под NT лично я перепробовал много разных ныне доступных программ и только PerfectDisk смог упорядочить не только файлы, но и подкачку, гибернацию и даже MFT$, что так же влияет на скорость работы магнитного диска. Ну и стратегии у него хорошие, правда с оптимальностью сортировки не очень, но поддерживать дефрагментацию можно относительно быстро, хотя первичная может затянуться на много часов.


Своими скриншотами отправили меня куда-то в начало века, спасибо :)
А что можете сказать про Defraggler ?
К сожалению, она не отложилась у меня в голове. Сейчас посмотрел скриншоты - никаких особых воспоминаний. Либо она не попалась мне в своё время, либо не оставила о себе каких-либо значимых впечатлений. Попробую её на днях и поделюсь своим мнением если не забуду.
PS Есть целый класс дефрагментаторов для NT, которые суть оболочка для встроенного API. А у него, насколько я понял когда читал про него, есть жёсткие ограничения во всём: в стратегии, в скорости и даже в размере блока. А ещё, там есть какие-то ограничения с MFT$ и директориями. Norton Speed Disk отлично сортировал и оптимизировал директории и LFN в них, сжимая и упорядочивая сам файл директории. PerfectDisk точно это делает с NTFS, но в Boot Time режиме (на самом деле это просто однозадачный режим до загрузки оболочки, на подобии того, что использует chkdsk при проверке системного тома). Если Defragger не умеет в это то он по сути бесполезен и является просто оболочкой системного API.
это для которого сделали вот такой GUI сами M$
Эм, это не они сделали, а Executive Software, компания-разработчик дефрагментатора Diskeeper, которой майки и заказали написание дефрагментатора.
Из-за этого у них потом возникли проблемы с использованием Windows 2000 в немецкой госухе. Немцы потребовали исходники ОС для проверки на наличие закладок, а исхдников дефрагментатора у майков то ли не оказалось, то ли договор с Executive Software не позволял раскрыть исходный код третьим лицам.
Кончилось тем, что добавили возможность удалить дефрагментатор, немцы выпилили его со своих серверов и стали счастливы.
Хуже всего, когда большие файлы на много мелких кусочков разбиты. У нас это проявлялось на базах почтовиков в десятки гигабайт. Дефрагментация заметно помогала работу ускорить.
Но после того, как все диски в юзерских компах заменили на ссд, вопрос закрылся. Ибо основное преимущество ссд перед винтами - это не скорости чтения/записи, а нулевое (ну, маленькое и везде одинаковое) время доступа. Пока диск не забит на 90%.
Впрочем, черепичные винты...
Ибо основное преимущество ссд перед винтами - это не скорости чтения/записи, а нулевое (ну, маленькое и везде одинаковое) время доступа.
SSD имеют разброс времени доступа в один порядок, видел это на графиках в разных статьях, специально поигрался с тестами на случай если информация устарела - для моего nvme от samsung примерно 3% запросов дают провал до 20ms, остальные операции укладываются в 2ms.
Для одиночного ssd этим можно пренебречь, но собрав полку из 24 дисков - вы получите среднее время доступа ~11ms вместо 2ms при таких вводных.
примерно 3% запросов дают провал до 20ms, остальные операции укладываются в 2ms. Для одиночного ssd этим можно пренебречь, но собрав полку из 24 дисков - вы получите среднее время доступа ~11ms
Интересно вы усредняете.
Скорость некоторых схем RAID равняется самому медленному диску в схеме.
Скорость некоторых схем RAID равняется самому медленному диску в схеме.
Из базовых в таком размере знаю только raid6 (бывает raid0, но под специфические задачи). Есть нюансы с размером кластера/страйпа/логикой контроллера, но вцелом на случайном чтении можно считать по минимальному, на любой записи или линейном чтении выйдет по самому медленному.
Условный raid60 это 2х12 дисков, уже ~7.5ms. При этом по мере загрузки/нагрузки/возраста цифры могут весьма неожиданно вырасти. Буквально в праздники наблюдал падение скорости линейного чтения ssd raid5 на 2 порядка.
Это не так работает даже для скорости, а уж для времени доступа и подавно.
Не указано, что (4) даёт оценку снизу. Как минимум - потому, что не все файлы фрагментированы. Далее - в ход могут вступить кэширования. Начиная с того, что в самом диске может оказаться в кэше вся дорожка.
Классика Хабра
Auslogic Disk Defrag Ultimate пользуюсь. Лучше чем ADD пока не видел.
Для меня в вопросах дефрагментации самым неочевидным была необходимость время от времени делать дефрагментацию SSD.
Да, там внутри SSD свои таблицы аллокации и записанное подряд может физически лежать по разным местам чипов памяти и наоборот, но сильная фрагментация на уровне MFT делает своё дело и со временем начинает вносить большие накладные расходы, видимо.
Попался мне тут компьютер родственницы, собранный ей частным мастером, который полностью отключил в Win10 периодический запуск встроенного дефрагментатора и поставил сторонний, даже с запуском по расписанию. И всё бы ничего, но лет 4-5 назад на него закончилась лицензия.
Так до дефрагментации оно ворочалось прям как будто на HDD стоит. Представляю в какую раздутую кашу там превратился MFT.
Разработчики Windows, например, видят лишь одну причину дефрагметировать SSD - чтобы точки восстановления не создавались медленно. Если защита системы выключена, дефрагментация вообще не производится.

Дефрагментация HDD ускоряет скорость работы, но на сколько? Расчет скорости HDD в зависимости от фрагментации