Если вы собираетесь переформатировать жесткий диск, есть ли что-нибудь, что могло бы «улучшить» производительность записи после этого, или это то, о чем вам даже не стоит беспокоиться? В сегодняшнем посте SuperUser Q&A есть ответы на вопросы любопытного читателя.
Сегодняшняя сессия вопросов и ответов проходит благодаря SuperUser - подразделению Stack Exchange, группы веб-сайтов вопросов и ответов, управляемой сообществом.
Фото любезно предоставлено Крис Баннистер (Flickr) .
Вопрос
Читатель SuperUser Brettetete хочет знать, улучшит ли заполнение жесткого диска нулями производительность записи:
У меня жесткий диск емкостью 2 ТБ, заполненный на 99 процентов. Я удалил разделы с fdisk и отформатировал его как ext4 . Насколько мне известно, фактические данные, которые были на жестком диске, все еще существуют, но таблица разделов была переназначена.
Мой вопрос: улучшит ли это производительность записи для дальнейших действий записи, если бы жесткий диск был чист? Под "чистым" я подразумеваю заполнить жесткий диск нулями? Что-то типа:
- dd if = / dev / zero of = / dev / sdx bs = 1 count = 4503599627370496
Может ли заполнение жесткого диска нулями улучшить производительность записи?
Ответ
У участника SuperUser Майкл Кьёрлинг есть для нас ответ:
Нет, это не улучшит производительность. Жесткие диски так не работают.
Во-первых, когда вы записываете какие-либо данные на вращающийся диск, он получает преобразованный в магнитные домены на самом деле это может сильно отличаться от битовой комбинации, которую вы пишете. Это сделано отчасти потому, что намного легче поддерживать синхронизацию, когда шаблон, считанный с диска, имеет определенную вариативность. Например, длинная строка из значений «ноль» или «единица» очень затруднит поддержание синхронизации. Вы прочитали 26 393 бит или 26 394 бит? Как распознать границу между битами?
Техники для этого со временем развивались. Например, посмотрите вверх Модифицированная частотная модуляция , MMFM, Запись группового кода , и более общая технология кодировки с ограничением длины прогона .
Во-вторых, когда вы записываете новые данные в сектор, магнитные домены соответствующих частей диска просто устанавливаются на желаемое значение. Это делается независимо от того, каким был предыдущий магнитный домен в этом конкретном физическом месте. Блюдо уже крутится под пишущей головкой; сначала чтение текущего значения, затем запись нового значения тогда и только тогда, когда оно отличается. Это приведет к тому, что каждая запись потребует двух оборотов (или дополнительной головки для каждой пластины), что приведет к удвоению задержки записи или значительному увеличению сложности диска, что, в свою очередь, приведет к увеличению стоимости.
Поскольку ограничивающим фактором в производительности последовательного ввода-вывода жесткого диска является то, насколько быстро каждый бит проходит под головкой чтения / записи, это даже не принесет пользы пользователю. Кроме того, ограничивающим фактором производительности произвольного ввода-вывода является то, насколько быстро головка чтения / записи может быть расположена на желаемом цилиндре, а затем нужный сектор окажется под головкой. Основная причина, по которой твердотельные накопители могут быть такими быстрыми в рабочих нагрузках случайного ввода-вывода, заключается в том, что они полностью исключают оба этих фактора.
Как указал Джейк Гулд , одна из причин, почему вы можете захотеть перезаписывать диск с фиксированным шаблоном (например, все нули) должен гарантировать, что никакие остатки ранее сохраненных данных не могут быть восстановлен , или сознательно или случайно. Но это никак не повлияет на производительность жесткого диска в будущем по причинам, указанным выше.
Есть что добавить к объяснению? Отключить звук в комментариях. Хотите узнать больше ответов от других технически подкованных пользователей Stack Exchange? Ознакомьтесь с полной веткой обсуждения здесь .