If-Koubou

Ще се подобри ли се ефективността на писането, ако преформатиран твърд диск е попълнен с нули?

Ще се подобри ли се ефективността на писането, ако преформатиран твърд диск е попълнен с нули? (Как да)

Ако възнамерявате да преформатирате твърд диск, има ли нещо, което след това ще подобри ефективността на писане или е нещо, за което дори не трябва да се притеснявате? Днешната публикация "Суперуслуги Q & A" има отговорите на въпросите на любознателен читател.

Днешната сесия за въпроси и отговори ни идва с любезното съдействие на SuperUser - подразделение на Stack Exchange - обединяване на уеб сайтове с въпроси и отговори.

Снимката е предоставена от Крис Банистър (Flickr).

Въпроса

Reader на SuperUser Brettetete иска да знае дали запълването на твърд диск с нули би подобрило ефективността на записване:

Имам 2TB твърд диск, който е бил 99% пълен. Премахнах дяловете с Fdisk и го форматира като ext4, Доколкото ми е известно, действителните данни, които са на твърдия диск, все още съществуват, но масата на дяловете е преразпределена.

Въпросът ми е: Ще подобри ли ефективността на записване за по-нататъшни действия за писане, ако твърдият диск е чист? С "чиста" искам да напълня твърдия диск с нули? Нещо като:

  • dd ако = / dev / нула от = / dev / sdx bs = 1 брой = 4503599627370496

Бихте ли напълнили твърдия диск с нули, подобрявате ефективността на записване?

Отговорът

Сътрудникът на SuperUser Michael Kjörling има отговор за нас:

Не, това няма да подобри представянето. Дисковете не работят по този начин.

Първо, когато напишете някаква дадена информация на ротационен диск, тя се трансформира в магнитни домейни, които всъщност могат да изглеждат много различни от битовия модел, който пишете. Това се прави отчасти, защото е много по-лесно да се поддържа синхронизацията, когато образецът, прочетен от плочата, има определена вариабилност. Например, дълъг низ от "нула" или "една" стойности биха направили много трудно да се поддържа синхронизация. Прочетохте ли 26,393 бита или 26,394 бита? Как разпознавате границата между бита?

Техниките за това са се развили с течение на времето. Например, потърсете Modified Frequency Modulation, MMFM, Group Code Recording и по-обща технология за ограничено кодиране на дължина на изпълнение.

На второ място, когато пишете нови данни в сектора, магнитните домейни на съответните части на плочата са просто настроени на желаната стойност. Това се прави независимо от това, което предишният магнитен домейн "е" на това конкретно физическо местоположение. Платото вече се върти под главата за запис; първо четене на текущата стойност, след което напишете новата стойност, ако и само ако е различна. Това би довело до това, че всяка записване изисква две обороти (или допълнителна глава за всеки платформа), което води до забавяне на писането да удвои или значително увеличава сложността на устройството, като в същото време увеличава разходите.

Тъй като ограничителният фактор при последователното входно / изходно изпълнение на твърдия диск е колко бързо всеки бит преминава под главата за четене / запис, това дори няма да предложи никаква полза за потребителя. Като отправна точка, ограничителният фактор при произволно изпълнение на I / O е колко бързо главата за четене / записване може да бъде поставена на желания цилиндър и след това желаният сектор да пристигне под главата. Основната причина, поради която SSD могат да бъдат толкова бързи в произволни I / O натоварвания е, че напълно премахват двата фактора.

Както посочи JakeGould, една от причините, поради която може да искате да презапишете устройството с някакъв фиксиран модел (като всички нули), би било да се гарантира, че остатъците от предварително съхранени данни не могат да бъдат възстановени, било то умишлено или случайно. Но това няма да окаже никакво влияние върху производителността на твърдия диск, като се имат предвид посочените по-горе причини.

Имате ли нещо, което да добавите към обяснението? Звучи в коментарите. Искате ли да прочетете повече отговори от други потребители на Stack Exchange? Вижте цялата тема на дискусията тук.