Hjemmeside » hvordan » Vil skrive ytelse forbedre hvis en omformatert harddisk ble fylt med nuller?

    Vil skrive ytelse forbedre hvis en omformatert harddisk ble fylt med nuller?

    Hvis du skal reformatere en harddisk, er det noe som vil "forbedre" skrive ytelse etterpå, eller er det noe du ikke engang skal bekymre deg for? Dagens SuperUser Q & A innlegg har svar på en nysgjerrig leser spørsmål.

    Dagens Spørsmål & Svar-sesjon kommer til oss med høflighet av SuperUser-en underavdeling av Stack Exchange, en fellesskapsdrevet gruppering av Q & A-nettsteder.

    Foto courtesy of Chris Bannister (Flickr).

    Spørsmålet

    SuperUser leser Brettetete vil vite om å fylle en harddisk med nuller ville forbedre skriveytelsen:

    Jeg har en 2TB harddisk som var 99 prosent full. Jeg har slettet partisjonene med fdisk og formatert den som ext4. Så vidt jeg vet, eksisterer de faktiske dataene som var på harddisken, men partisjonstabellen ble tilordnet.

    Spørsmålet mitt er: Ville det forbedre skriveytelsen for videre skrivehandlinger hvis harddisken var ren? Ved "ren" mener jeg å fylle harddisken med nuller? Noe som:

    • dd hvis = / dev / null av = / dev / sdx bs = 1 teller = 4503599627370496

    Vil fylle harddisken med nuller forbedre skriveytelsen?

    Svaret

    SuperUser-bidragsyter Michael Kjörling har svaret for oss:

    Nei, det ville ikke forbedre ytelsen. HDDer fungerer ikke slik.

    Først når du skriver noen data til en rotasjonsdriver, blir den forvandlet til magnetiske domener som faktisk kan se veldig annerledes ut enn det bitmønster du skriver. Dette gjøres delvis fordi det er mye lettere å opprettholde synkronisering når mønsteret som leses tilbake fra tallerkenen, har en viss variabilitet. For eksempel vil en lang streng med "null" eller "en" verdier gjøre det svært vanskelig å opprettholde synkronisering. Har du lest 26.393 bits eller 26.394 bits? Hvordan gjenkjenner du grensen mellom biter?

    Teknikkene for å gjøre dette har utviklet seg over tid. For eksempel, slå opp Modifisert frekvensmodulering, MMFM, gruppekodeopptak og den mer generelle teknologien med begrensede koding av kjørelengde.

    For det andre, når du skriver nye data til en sektor, blir de magnetiske domenene til de relevante delene av fatet ganske enkelt satt til ønsket verdi. Dette gjøres uansett hva det tidligere magnetiske domenet "var" på den aktuelle fysiske plasseringen. Tallerkenen spinner allerede under skrivehodet; Først leser gjeldende verdi, og skriver deretter den nye verdien hvis og bare hvis den er annerledes. Det ville føre til at hver skrive krever to omdreininger (eller et ekstra hode for hver tallerken), noe som forårsaker skriveforsinkelse til å doble eller øke kompleksiteten til stasjonen, noe som igjen øker kostnadene.

    Siden begrensningsfaktoren i harddisk sekvensiell I / O-ytelse er hvor raskt hver bit går under lese- / skrivehodet, vil dette ikke engang gi noen fordel for brukeren. Som en side er begrensningsfaktoren i tilfeldig I / O-ytelse hvor fort les / skrivehodet kan plasseres på ønsket sylinder, og deretter kommer den ønskede sektoren under hodet. Den viktigste grunnen til at SSD-er kan være så fort i tilfeldige I / O-arbeidsbelastninger er at de helt eliminerer begge disse faktorene.

    Som påpekt av JakeGould, kan en grunn til at du kanskje vil overskrive stasjonen med noe fast mønster (som alle nuller) være å sikre at ingen rester av tidligere lagrede data kan gjenopprettes, enten bevisst eller ved et uhell. Men det vil ikke ha noen effekt på harddiskens ytelse fremover, av de grunnene som er nevnt ovenfor.


    Har du noe å legge til forklaringen? Lyder av i kommentarene. Vil du lese flere svar fra andre tech-savvy Stack Exchange-brukere? Sjekk ut hele diskusjonstråden her.