If-Koubou

Može li se pisati izvedbu poboljšati ako je formatiran tvrdi disk napunjen s nula?

Može li se pisati izvedbu poboljšati ako je formatiran tvrdi disk napunjen s nula? (Kako da)

Ako namjeravate preoblikovati tvrdi disk, postoji li nešto što bi "popravilo" pisanje izvedbe nakon toga ili je to nešto za što se ne biste trebali brinuti? Danas SuperUser Q & A post ima odgovore na znatiželjna pitanja čitatelja.

Današnja pitanja i odgovori nam se javljaju zahvaljujući SuperUseru - podjele Stack Exchange-a, zajednice-driven grupiranja Q & A web stranica.

Fotografija ljubaznošću Chris Bannister (Flickr).

Pitanje

Čitač SuperUser Brettetete želi znati da li popunjavanje tvrdog diska s nula pomaže poboljšanju performansi pisanja:

Imam 2TB hard disk koji je 99% pun. Izbrisao sam particije fdisk i formatirala je kao ext4, Koliko ja znam, stvarni podaci koji su bili na tvrdom disku i dalje postoje, ali je prebacivanje tablice prebačeno.

Moje pitanje je: bi li poboljšala performanse pisanja za daljnje akcije pisanja ako je hard disk bio čist? Po 'čistom' mislim napuniti tvrdi pogon s nula? Nešto kao:

  • dd if = / dev / nula od / dev / sdx bs = 1 count = 4503599627370496

Bi li punjenje tvrdog diska s nulama poboljšalo svojstvo pisanja?

Odgovor

Michael Kjörling ima odgovor za nas:

Ne, to ne bi poboljšalo performanse. Tvrdi diskovi ne rade tako.

Prvo, kada pišete bilo koji podatak na rotacijsku jedinicu, ona se pretvara u magnetske domene koje mogu izgledati vrlo različite od obrisa bitova koji pišete. To se radi dijelom jer je puno lakše održavati sinkronizaciju kada se obrazac očitava iz pladnja ima određenu varijabilnost. Na primjer, dugi niza vrijednosti "nula" ili "jedan" učinili bi vrlo teško održavati sinkronizaciju. Jeste li pročitali 26.393 bita ili 26.394 bita? Kako prepoznati granicu između bitova?

Tehnike za to su evoluirale tijekom vremena. Na primjer, potražite Modificiranu modulaciju učestalosti, MMFM, snimanje grupnog koda i općenitiju tehnologiju kodiranja ograničenih duljina.

Drugo, kada pišete nove podatke sektoru, magnetske domene relevantnih dijelova pladnja jednostavno se postavljaju na željenu vrijednost. To se vrši bez obzira na prethodnu magnetsku domenu 'bila' na toj fizičkoj lokaciji. Plava se već vrti ispod glave za pisanje; prvo čitanje trenutne vrijednosti, a zatim pisanje nove vrijednosti ako i samo ako je drugačije. To bi uzrokovalo da svako pisanje zahtijeva dva okretaja (ili dodatnu glavu za svaku pladnju), što uzrokuje da latencija zapisivanja udvostruči ili uvelike povećava složenost pogona i time povećava troškove.

Budući da je ograničavajući čimbenik u sekvencijskom I / O performansu tvrdog diska kako brzo svaki bit prolazi ispod glave za čitanje / pisanje, to ne bi ni korisnicima pružilo nikakvu korist. Kao stranu, ograničavajući čimbenik u slučaju slučajnog I / O izvedbe je koliko brzo glava za čitanje / pisanje može biti postavljena na željeni cilindar, a zatim se željeni sektor nalazi ispod glave. Glavni razlog zašto SSD-ovi mogu biti tako brzo u slučajnim I / O opterećenjima je da oni u potpunosti eliminiraju oba ova čimbenika.

Kao što je istaknuo JakeGould, jedan od razloga zašto biste možda želite prebrisati pogon s nekim fiksnim uzorkom (kao što su sve nulte vrijednosti) bit će kako bi se osiguralo da niti jedan ostatak prethodno pohranjenih podataka ne može biti obnovljen, bilo namjerno ili slučajno. Ali to neće imati nikakvog utjecaja na performanse tvrdog diska naprijed, iz gore navedenih razloga.

Imate li nešto za objašnjenje? Zvuči u komentarima. Želite li pročitati više odgovora od drugih tehnoloških korisnika Stack Exchangea? Pogledajte ovdje cijelu raspravu.