16Aug
Se si intende riformattare un disco rigido, c'è qualcosa che potrebbe migliorare le prestazioni di scrittura in seguito o è qualcosa di cui non dovresti nemmeno preoccuparti? Il post di Q & A di SuperUser di oggi ha le risposte alle domande di un lettore curioso.
Today's Question &La sessione di risposta ci viene fornita per gentile concessione di SuperUser, una suddivisione di Stack Exchange, un raggruppamento di Q & A basato su community.
Foto per gentile concessione di Chris Bannister( Flickr).
La domanda
SuperUser reader Brettetete vuole sapere se riempire un disco rigido con zeri migliorerebbe le prestazioni in scrittura:
Ho un disco rigido da 2TB pieno al 99 percento. Ho cancellato le partizioni con fdisk e formattato come ext4 .Per quanto ne so, i dati reali presenti sul disco fisso esistono ancora, tuttavia la tabella delle partizioni è stata riassegnata.
La mia domanda è: migliorerebbe le prestazioni in scrittura per ulteriori azioni di scrittura se il disco rigido fosse pulito? Con "pulito" intendo riempire il disco fisso con gli zeri? Qualcosa come:
- dd if = /dev/ zero = /dev/ sdx bs = 1 count = 4503599627370496
Riempirebbe il disco rigido con zero migliorando le prestazioni di scrittura?
La risposta
SuperUser contributore Michael Kjörling ha la risposta per noi:
No, non migliorerebbe le prestazioni. Gli HDD non funzionano così.
Innanzitutto, quando si scrivono dati su un'unità rotazionale, questi vengono trasformati in domini magnetici che potrebbero sembrare molto diversi dal pattern di bit che si sta scrivendo. Ciò è in parte dovuto al fatto che è molto più semplice mantenere la sincronizzazione quando il pattern di lettura dal piatto ha una certa quantità di variabilità.Ad esempio, una lunga stringa di valori "zero" o "uno" renderebbe molto difficile mantenere la sincronizzazione. Hai letto 26.393 bit o 26.394 bit? Come riconosci il confine tra i bit?
Le tecniche per fare ciò si sono evolute nel tempo. Ad esempio, cercare Modified Frequency Modulation, MMFM, Group Code Recording e la tecnologia più generale delle codifiche limitate run-length.
In secondo luogo, quando si scrivono nuovi dati in un settore, i domini magnetici delle parti rilevanti del piatto sono semplicemente impostati sul valore desiderato. Ciò viene fatto indipendentemente da ciò che il precedente dominio magnetico "era" in quella particolare posizione fisica. Il piatto sta già girando sotto la testina di scrittura;prima leggere il valore corrente, quindi scrivere il nuovo valore se e solo se è diverso. Ciò farebbe sì che ogni scrittura richieda due rivoluzioni( o una testina aggiuntiva per ciascun piatto), facendo sì che la latenza di scrittura raddoppi o aumenti notevolmente la complessità dell'unità, a sua volta aumentando i costi.
Poiché il fattore limitante nelle prestazioni I / O sequenziali del disco rigido è la velocità con cui ogni bit passa sotto la testina di lettura / scrittura, ciò non offrirebbe alcun vantaggio all'utente. Per inciso, il fattore limitante nelle prestazioni di I / O casuali è la velocità con cui la testina di lettura / scrittura può essere posizionata sul cilindro desiderato e quindi il settore desiderato arriva sotto la testa. Il motivo principale per cui gli SSD possono essere così veloci nei carichi di lavoro di I / O casuali è che eliminano completamente entrambi questi fattori.
Come sottolineato da JakeGould, uno dei motivi per cui si potrebbe desiderare di sovrascrivere l'unità con alcuni schemi fissi( come tutti gli zeri) potrebbe essere quello di garantire che nessun residuo di dati precedentemente memorizzati possa essere recuperato, deliberatamente o accidentalmente. Ma farlo non avrà alcun effetto sulle prestazioni del disco rigido in futuro, per le ragioni sopra esposte.
Hai qualcosa da aggiungere alla spiegazione? Audio disattivato nei commenti. Vuoi leggere più risposte dagli altri utenti di Stack Exchange esperti di tecnologia? Controlla la discussione completa qui.