Warum verwenden PCs keinen RAM zur Fehlerkorrektur? „Weil Intel“, sagt Linus

Vergrößern / Wir haben in den letzten Jahren einen freundlicheren, sanfteren Linus Torvalds genossen. Aber das heißt nicht, dass er aufgehört hat, Meinungen zu haben.

Diesen Montag schimpfte der Linux-Kernel-Ersteller Linus Torvalds frustriert über das Fehlen von ECC-RAM (Error Correcting Checksum) in Consumer-PCs und Laptops.

… die fehlgeleitete und rückständige Politik der „Verbraucher brauchen kein ECC“, der Markt für ECC-Speicher verschwindet.

Die Argumente gegen ECC waren immer vollständig und völliger Müll. Jetzt beginnen sogar die Speicherhersteller, ECC intern durchzuführen, weil sie sich schließlich der Tatsache verschrieben haben, dass sie es unbedingt müssen.

Wenn Sie mit ECC-RAM nicht vertraut sind, liegt dies wahrscheinlich daran, dass Sie keine dedizierten Server mit Server-CPUs und Motherboards erstellen oder spezifizieren – worum es leider geht der einzige Ort, an dem Sie tatsächlich ECC finden. Kurz gesagt, der ECC-RAM enthält eine winzige Menge zusätzlichen Speichers, der zum Erkennen und Korrigieren von Fehlern verwendet wird.

Speicherfehler und Wahrscheinlichkeit

In den meisten modernen Implementierungen bedeutet dies für jeweils 64- Bitwort im RAM gespeichert, gibt es acht Prüfbits. Ein einzelner Bitfehler – eine 0 auf 1 oder eine 1 auf 0 – kann automatisch erkannt und korrigiert werden. Zwei im selben Wort gespiegelte Bits können erkannt, aber nicht korrigiert werden. Drei oder mehr Bits, die im selben Wort gespiegelt wurden, werden wahrscheinlich erkannt, aber die Erkennung ist nicht garantiert.

Bit-Flips können aus vielen Gründen auftreten, beginnend mit Auswirkungen auf die kosmische Strahlung oder einem einfachen Hardwarefehler. Eine groß angelegte Studie mit Google-Servern ergab, dass ungefähr 32 Prozent aller Server (und 8 Prozent aller DIMMs) in der Google-Flotte mindestens einen Speicherfehler pro Jahr aufweisen. Die überwiegende Mehrheit davon sind jedoch Einzelbitfehler. und da Google Server-CPUs und ECC-RAM verwendet, bedeutet dies, dass die betreffenden Maschinen weiterhin LKWs fahren.

Mehr anzeigen

Auf Consumer-Computern bleiben selbst diese Einzelbitfehler, die laut Google-Daten mehr als 40-mal häufiger auftreten als Mehrbitfehler, unentdeckt und können auftreten Instabilität in Systemen und Beschädigung von Daten.

Bitflips sind nicht immer zufällig

Nicht jeder RAM-Fehler ist das Ergebnis eines Hardwarefehlers oder eines unbeabsichtigten EMF-Problems. In den letzten Jahren haben Forscher zunehmend praktische physikbasierte Seitenkanalangriffe entwickelt, bei denen kontrollierte, schnelle Bit-Flips in RAM-Bereichen verwendet wurden, auf die eine Anwendung zugreifen kann, um die Datenwerte in benachbarten RAM-Bereichen abzuleiten oder zu ändern, die sie nicht können sollten .

Obwohl ECC-RAM Angriffe im RAMBleed-Stil, die die Werte des benachbarten Speichers ableiten, nicht abschwächen kann, kann es im Allgemeinen Rowhammer-Angriffe stoppen – bei denen das schnelle Umdrehen von Bits in einem Bereich des RAM dazu führt, dass sich Bits in einem benachbarten Bereich ändern / p>

Selbst wenn ECC nicht aktiv verhindern kann, dass ein Rowhammer-Angriff Auswirkungen auf das System hat – beispielsweise wenn mehrere Bits in einem Wort umgedreht werden -, kann es das System zumindest auf das Problem aufmerksam machen und in Verhindern Sie in den meisten Fällen, dass der Rowhammer-Angriff etwas anderes als Ausfallzeiten verursacht. (Die meisten ECC-Systeme sind so konfiguriert, dass der gesamte Computer angehalten wird, wenn ein nicht korrigierbarer Fehler festgestellt wird.)

Torvalds beschuldigt Intel

Und die Speicherhersteller c laim es liegt an der Wirtschaftlichkeit und der geringeren Macht. Und sie lügen Bastarde – lassen Sie mich noch einmal darauf hinweisen, wie diese Probleme bereits seit mehreren Generationen bestehen, aber diese Ficker verkauften glücklich kaputte Hardware an Verbraucher und behaupteten, es sei ein „Angriff“ gewesen, als es immer war „Wir schneiden Ecken ab.“

Wie oft ist ein Reihenhammer-ähnlicher Bit-Flip nur durch reines Pech bei echten Nichtangriffslasten passiert? Wir werden es nie erfahren. Weil Intel Scheiße geschoben hat an die Verbraucher.

Torvalds vertritt die kühne Position, dass der Mangel an ECC-RAM in der Verbrauchertechnologie die Schuld von Intel aufgrund der künstlichen Politik des Unternehmens ist Marktsegmentierung: Intel hat ein begründetes Interesse daran, Unternehmen mit tieferen Taschen in Richtung seiner teureren und rentableren Server-CPUs zu treiben, anstatt diese Unternehmen die notwendigerweise margenschwächeren Verbraucherteile effektiv nutzen zu lassen.

Entfernen der Unterstützung Für ECC-RAM von CPUs, die nicht direkt auf die Serverwelt abzielen, hat Intel diese beibehalten Märkte stark segmentiert. Torvalds „Argument hier ist, dass die Weigerung von Intel, ECC-RAM in seinen verbraucherorientierten Teilen zu unterstützen – zusammen mit seinem faktischen Monopol in diesem Bereich – der wahre Grund dafür ist, dass ECC außerhalb des Serverbereichs fast nicht verfügbar ist.

Werbung

Das übliche Argument, warum ECC in der Verbrauchertechnologie nicht vorhanden ist, dreht sich um die Kosten, aber wir vermuten, dass Torvalds hier das Recht dazu hat. Obwohl ECC-RAM im Wesentlichen ein schwer zu findendes Spezialteil ist, kostet es in der Regel nur etwa 20 Prozent mehr pro DIMM als Nicht-ECC im Einzelhandel. Das eigentliche Problem ist, dass es ohne Motherboards und CPUs, die es unterstützen, nicht funktioniert Sie etwas Gutes.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.