A system error indicating a critical hardware problem detected by the CPU. MCEs are generally fatal and usually indicate a CPU, memory, or motherboard issue.
A machine check exception (MCE) is a system error raised by the CPU when it detects a critical hardware problem. MCEs are usually the result of a problem with the motherboard, memory, or CPU itself and are generally fatal:
- Windows XP will crash with STOP 0x9C
MACHINE_CHECK_EXCEPTION. - Windows Vista and later will crash with STOP 0x124
WHEA_UNCORRECTABLE_ERRORand 0x0 for the first parameter (but may give 0x9C under certain limited circumstances). - OS X will crash with a kernel panic: "You need to restart your computer..."
- Linux will crash with a kernel panic: "Kernel panic - not syncing: CPU context corrupt"
Diagnosing a machine check exception can be difficult because the error codes provided by the CPU are vendor-dependent. Programs such as mcelog for Linux are available to detect and decode MCE errors. On Windows, the kernel debugger can be used to diagnose MCE crashes, as demonstrated in this MSDN blog post.