Hur vet diagnosverktyget för hårddisk om en sektor är dålig eller inte?
Ingen tycker om att tänka på en hårddisk som går dåligt mycket mindre om att få problem med en, men hur vet de hårda diagnostiska verktygen faktiskt om sektorer är dåliga eller inte? Dagens SuperUser Q & A-inlägg har svar på en nyfiken läsarens frågor.
Dagens Question & Answer-session kommer till oss med tillstånd av SuperUser-en indelning av Stack Exchange, en community-driven gruppering av Q & A-webbplatser.
Foto med tillstånd av Matthew (Flickr).
Frågan
SuperUser-läsare David vill veta hur hårda diagnostiska verktyg vet om en sektor är dålig:
När jag kör över en hårddisk som kan misslyckas, skannar jag den med ViVARD, vilket pålidligt låter mig veta om hårddisken behöver bytas ut eller inte. Hur fungerar dessa typer av verktyg? Hur kan de säga en dålig sektor från en bra sektor?
Hur vet diagnosverktyg med hårddisk om en sektor är dålig eller inte?
Svaret
SuperUser-bidragsgivarna Stavr00 och Ole Tange har svaret för oss. Först upp, Stavr00:
Moderna hårddiskar implementerar ett system i firmware som heter S.M.A.R.T. som samlar statistik om hårddiskens prestanda och automatiskt undviker dataförlust genom att flytta data bort från dåliga sektorer.
Diagnostiska verktyg frågar hårddiskens S.M.A.R.T. programvara för att bygga en hälsokontrollrapport. Dåliga sektorer detekteras vid åtkomst till hårddisken, undviks och nödvändig omlokalisering görs av S.M.A.R.T. systemet.
Följd av svaret från Ole Tange:
Jag är inte bekant med ViVARD, så det här är ett allmänt svar.
SMART.
SMART. är en del av modernaste hårddiskar. Den registrerar när hårddisken ser en dålig sektor och när "sök eller spinntid" är längre än normalt. Det här är alla indikatorer på att en hårddisk inte fungerar.
Hur hårddisken räddar en bristande sektor beror på felkorrigeringskoder (vanligtvis Reed-Solomon) som kan rädda om några bitar är felaktiga. Om många bitar är fela, försöker hårddisken rädda genom att läsa sektorn om och om igen. När det äntligen blir rätt, sparar det det till en av de extra sektorerna.
Läsesektorer
Hårddisken omfördelar sektorer med läsfel till en uppsättning reservdelar som är reserverade för detta. Operativsystemet brukar inte se detta, men ser att hela hårddisken inte har några fel. Endast när det inte finns några fler sektorer att omfördela till (eller sektorn inte kan räddas) kommer operativsystemet att se de brutna sektorerna.
Men det är möjligt att kringgå felkorrigering. Jag tror att det är annorlunda för varje modell, men kanske ViVARD gör det? På så sätt kan du läsa aktuella data på hårddisken. Genom att läsa detta kan du se vilka sektorer som har fel, även om operativsystemet själv inte ser några fel.
Har du något att lägga till förklaringen? Ljud av i kommentarerna. Vill du läsa mer svar från andra tech-savvy Stack Exchange-användare? Kolla in hela diskussionsgängan här.