By submitting your personal information, you agree that TechTarget and its partners may contact you regarding relevant content, products and special offers.
Receiving an error message that strongly hints that your computer has become unusable can be terrifying. One of the more common error messages in Windows is similar to a Blue Screen of Death, and reads like so:
*** Hardware Malfunction
Call your hardware vendor for support
*** The system has halted ***
What causes this? It's called a non-maskable interrupt (NMI), an interrupt signal that is sent by hardware and cannot be "masked" or blocked by software. The memory controller typically uses non-maskable interrupts and will generate one if it detects a parity error in memory. This, in turn, is a signal to the currently running operating system that something is very wrong, and the computer should stop immediately to prevent damage to any data. Note: To learn more about NMI error messages and how NMIs can be generated, read these blogs by Raymond Chen.
Once a Windows machine receives a non-maskable interrupt signal, it will flash the error message described above and, at times, add a descriptive with an NMI: prefix. Here are some of the possible errors:
Parity Check / Memory Parity Error: This indicates that a memory module in the machine failed a parity check and may be defective. Run a memory-test suite like Memtest86+ to determine which DIMM (dual in-line memory module) may be faulty.
Bus Timeout: If you receive this message, a piece of hardware on the system bus has stopped responding, most likely an add-on card (which may be defective or shoddily manufactured).
Software NMI generated: This indicates a currently-running program generated an NMI—rare, but possible.
Microsoft has an article addressing NMIs, and I, too, believe that memory problems -- either with main system memory, or (worse) the cache memory on a motherboard or adapter -- are often the cause. To eliminate the most obvious problems, start with Memtest86+, but if tests show the memory isn't defective, you've eliminated most other variables, and you're still having problems, the real culprit may be the motherboard itself.
About the author:
Serdar Yegulalp is editor of the Windows Insight, (formerly the Windows Power Users Newsletter), a blog site devoted to hints, tips, tricks and news for users and administrators of Windows NT, Windows 2000, Windows XP, Windows Server 2003 and Vista. He has more than 12 years of Windows experience under his belt and contributes regularly to SearchWinComputing.com and SearchSQLServer.com.