Nikt nie lubi myśleć o uszkodzeniu dysku twardego, a tym bardziej o problemach z nim, ale w jaki sposób narzędzia diagnostyczne dysku twardego faktycznie wiedzą, czy sektory są uszkodzone, czy nie? Dzisiejszy post z pytaniami i odpowiedziami dla SuperUser zawiera odpowiedzi na pytania zaciekawionego czytelnika.
Dzisiejsza sesja pytań i odpowiedzi jest dostępna dzięki uprzejmości SuperUser - części Stack Exchange, grupy witryn internetowych z pytaniami i odpowiedziami.
Zdjęcie dzięki uprzejmości Matthew (flickr) .
Pytanie
Czytnik SuperUser David chce wiedzieć, skąd narzędzia diagnostyczne dysku twardego wiedzą, czy sektor jest uszkodzony:
Kiedy napotykam dysk twardy, który może nie działać, skanuję go za pomocą Koncertowo , który niezawodnie informuje mnie, czy dysk twardy wymaga wymiany, czy nie. Jak działają tego rodzaju narzędzia? Jak mogą odróżnić zły sektor od dobrego sektora?
Skąd narzędzia diagnostyczne dysku twardego wiedzą, czy sektor jest uszkodzony, czy nie?
Odpowiedź
Dostawcy SuperUser Stavr00 i Ole Tange mają dla nas odpowiedź. Po pierwsze, Stavr00:
Nowoczesne dyski twarde implementują system w oprogramowaniu o nazwie MĄDRY. który gromadzi statystyki dotyczące wydajności dysku twardego i automatycznie zapobiega utracie danych, przenosząc dane z uszkodzonych sektorów.
Narzędzia diagnostyczne wysyłają zapytania do S.M.A.R.T. dysku twardego oprogramowanie w celu stworzenia raportu z kontroli stanu. Uszkodzone sektory są wykrywane podczas uzyskiwania dostępu do dysku twardego, omijane, a konieczna zmiana lokalizacji jest wykonywana przez S.M.A.R.T. system.
Następnie odpowiedź Ole Tange:
Nie znam ViVARD, więc jest to ogólna odpowiedź.
MĄDRY.
MĄDRY. jest częścią większości nowoczesnych dysków twardych. Rejestruje, kiedy dysk twardy widzi uszkodzony sektor i kiedy „czas wyszukiwania lub rozpędzania” jest dłuższy niż normalnie. To wszystko wskazuje, że dysk twardy jest uszkodzony.
Sposób, w jaki dysk twardy ratuje uszkodzony sektor, wynika z kodów korygujących błędy (zwykle Reed-Solomon), które mogą przeprowadzić ratunek, jeśli kilka bitów jest błędnych. Jeśli wiele bitów jest błędnych, dysk twardy próbuje odzyskać dane, odczytując sektor w kółko. Kiedy w końcu zrobi to dobrze, zapisuje go w jednym z zapasowych sektorów.
Czytanie sektorów
Dysk twardy ponownie przydziela sektory z błędami odczytu do zestawu zapasowych sektorów, które są do tego zarezerwowane. System operacyjny zwykle tego nie widzi, ale uważa, że cały dysk twardy nie zawiera błędów. Tylko wtedy, gdy nie ma więcej sektorów do realokacji (lub sektora nie można odzyskać), system operacyjny zobaczy uszkodzone sektory.
Ale można ominąć korekcję błędów. Uważam, że dla każdego modelu jest inaczej, ale może ViVARD to robi? W ten sposób możesz odczytać rzeczywiste dane z dysku twardego. Czytając to, będziesz mógł zobaczyć, które sektory zawierają błędy, nawet jeśli sam system operacyjny nie widzi błędów.
Masz coś do dodania do wyjaśnienia? Dźwięk w komentarzach. Chcesz przeczytać więcej odpowiedzi od innych zaawansowanych technicznie użytkowników Stack Exchange? Sprawdź cały wątek dyskusji tutaj .