Pomyśl o tym: Memtest86 musi przechowywać informacje o tym, jak duża jest pamięć RAM, co umieściła w pamięci RAM, aby porównać później, gdzie zaktualizować ekran i wiele innych informacji. Czynność użycia zmiennej wymaga poprawnego działania pamięci RAM. Ale w jaki sposób można uzyskać wiarygodne wyniki, gdy program działa na prawdopodobnie uszkodzonej pamięci RAM?
Cóż, właśnie to robi Memtest - zapisuje różne (znane) wzorce w pamięci RAM, odczytuje je z powrotem i porównuje. W przypadku niezgodności pamięć RAM musi zostać uszkodzona.
Analogią do tego jest uruchomienie programu sprawdzającego dysk twardy z dysku twardego, który sprawdzasz. Nigdy byś tego nie zrobił, zły blok może wpłynąć na program na wiele nieoczekiwanych sposobów
Chociaż jest to prawda, w niektórych przypadkach nie masz wyboru. Tak długo, jak można pomyślnie załadować program, powinien on być w stanie wykonywać swoje zadania diagnostyczne (nawet jeśli działa na jakimś uszkodzonym nośniku).
Jak działa Memtest86 przy złej pamięci RAM?
Cóż, najpierw musi się załadować do pamięci. W większości przypadków ta pamięć będzie nadal dobra. W przypadku, gdy jest to nie , Memtest najprawdopodobniej ustalić, że sam program jest uszkodzony porównując kilka zmiennych w miejscu z sumą kontrolną. W przypadku, gdy się nie zgadzają, od razu wiadomo, że albo pamięć RAM jest zła, albo pobrana kopia jest uszkodzona (i ustalenie, czy ta ostatnia jest przyczyną, czy nie, byłoby trywialnym zadaniem).
TL, DR: Memtest86 + działa tylko przy założeniu, że pierwszy megabajt pamięci RAM jest nadal w porządku (miejsce, w którym najprawdopodobniej zostanie załadowany). Zakładając, że ten obszar jest uszkodzony, sam Memtest86 + po prostu nie działałby (co jest dość szybkim wskaźnikiem, że twoja pamięć RAM jest zła, nawet bez uruchomienia testów).