Denken Sie darüber nach: Memtest86 muss Informationen darüber speichern, wie groß der Arbeitsspeicher ist, was er im Arbeitsspeicher ablegt, um ihn später zu vergleichen, wo der Bildschirm aktualisiert werden soll, und viele weitere Informationen. Die Verwendung einer Variablen erfordert, dass der RAM ordnungsgemäß funktioniert. Aber wie können Sie zuverlässige Ergebnisse erzielen, wenn Sie das Programm auf einem möglicherweise defekten RAM ausführen?
Nun, das tut Memtest - es schreibt verschiedene (bekannte) Muster in Ihren Arbeitsspeicher, liest es zurück und vergleicht. Wenn es eine falsche Übereinstimmung gibt, muss Ihr RAM beschädigt sein.
Eine Analogie dazu ist das Ausführen eines Festplattenprüfprogramms von der Festplatte, die Sie überprüfen. Sie würden das niemals tun, ein fehlerhafter Block könnte das Programm auf unerwartete Weise beeinflussen
Während dies wahr ist, gibt es einige Fälle, in denen Sie keine Wahl haben. Solange Sie das Programm erfolgreich laden können, sollte es in der Lage sein, seine Diagnoseaufgaben auszuführen (auch wenn es auf einem fehlerhaften Medium läuft).
Wie funktioniert Memtest86 mit schlechtem RAM?
Nun, es muss sich zuerst in den Speicher laden. In den meisten Fällen ist dieser Speicher noch gut. Falls dies nicht der Fall ist, wird Memtest höchstwahrscheinlich feststellen, dass das Programm selbst beschädigt ist, indem einige In-Place-Variablen mit einer Prüfsumme verglichen werden. Für den Fall, dass sie nicht übereinstimmen, wissen Sie sofort, dass entweder Ihr RAM schlecht ist oder die heruntergeladene Kopie beschädigt ist (und es wäre eine triviale Aufgabe, herauszufinden, ob letzteres die Ursache ist oder nicht).
TL, DR: Memtest86 + funktioniert nur, wenn das erste Megabyte Ihres Arbeitsspeichers noch in Ordnung ist (der Speicherort, an dem es höchstwahrscheinlich geladen wird). Unter der Annahme, dass dieser Bereich beschädigt ist, würde Memtest86 + selbst einfach nicht funktionieren (was ein ziemlich schneller Indikator ist, dass Ihr RAM schlecht ist, ohne die Tests ausgeführt zu haben).