Machine Check Exception

Aus Thomas-Krenn-Wiki
Zur Navigation springen Zur Suche springen

Die Anzahl an Transistoren in aktuellen CPUs und Speicherchips steigt laufend an. Die Geschwindigkeit der Hardware-Bus-Systeme steigt ebenfalls. Das erhöht die Wahrscheinlichkeit von einzelnen Bit-Fehlern. Moderne Chips erkennen solche Bit-Fehler und können diese auch teilweise (jedoch nicht immer) korrigieren (z.B. mittels ECC). Wenn die Chips einen derartigen Fehler erkennen, spricht man von einem Machine Check (MC).

(Die Informationen in diesem Artikel stammen großteils aus dem Paper Machine check handling on Linux von Andi Kleen[1].)

Was ist ein Machine Check

Es gibt zwei Arten von Machine Checks:

  • Machine Check Exception (MCE): diese tritt auf, wenn die Hardware einen Fehler erkennt, den Fehler aber nicht korrigieren kann. Die CPU unterbricht dabei das aktuell laufende Programm und ruft einen speziellen Exception Handler auf.
  • Silent Machine Check: hier kann die Hardware den Fehler ausbessern, loggt aber das Ereignis in interne Register. Diese Register können vom Betriebssystem oder von der Firmware später ausgelesen werden.

Ursachen für Machine Checks können sein:

  • CPU
  • PCI IO
  • Speicher (Memory)
  • Caches
  • interne Busse
  • Software Bugs in Treibern (When PCI IO errors are enabled machine checks could be also caused by software bugs in drivers.[2])

Beobachtete Machine Check Exceptions

In folgenden Beispielen konnten wir MCEs beobachten:

Referenzen

  1. Andi Kleen: Machine check handling on Linux, August 2004, SUSE Labs, zusätzliche Folien verfügbar unter http://www.halobates.de/
  2. Andi Kleen: Machine check handling on Linux, August 2004, SUSE Labs, Seite 2

Weitere Informationen


Foto Werner Fischer.jpg

Autor: Werner Fischer

Werner Fischer arbeitet im Product Management Team von Thomas-Krenn. Er evaluiert dabei neueste Technologien und teilt sein Wissen in Fachartikeln, bei Konferenzen und im Thomas-Krenn Wiki. Bereits 2005 - ein Jahr nach seinem Abschluss des Studiums zu Computer- und Mediensicherheit an der FH Hagenberg - heuerte er beim bayerischen Server-Hersteller an. Als Öffi-Fan nutzt er gerne Bus & Bahn und genießt seinen morgendlichen Spaziergang ins Büro.


Das könnte Sie auch interessieren

Failed to load amd/sev.fw
Mainboard Bezeichnung auslesen
SATA exception Emask 0x10 SAct 0x0 SErr 0x4000000 action 0xe frozen