In computing, a double fault is a serious type of error that occurs when a central processing unit (CPU) cannot adequately handle a certain type of system event that requires the CPU’s immediate attention. Double faults may cause computer crashes and error messages, automatic restarting of the machine, and the loss of any unsaved data. They are often caused by problems in the computer’s hardware such as a bad memory module or overheating CPU. General troubleshooting techniques such as checking hardware and keeping software up to date may help to prevent them.
A double fault can only occur following an interrupt or exception, which are signals that tell a computer’s CPU to halt any currently running tasks in order to deal with important system events, such as the addition of new hardware or a program making an invalid memory request. Interrupts and exceptions are normal functions of modern computers and are accomplished by running a special type of software known as an interrupt handler or exception handler. The CPU will attempt to run one of these highly specialized programs and then resume normal operation. When a handler encounters an error or cannot correct the condition that led to the exception or interrupt, a double fault has taken place.
Unlike interrupts and exceptions, a double fault is a serious error that is not expected during normal operation. The system will attempt to run a special double fault handler, but in contrast to other types of handlers, it only collects diagnostic information and does not fix the problem. In many cases, unsaved work will be lost. A “stop error,” more infamously known as the "blue screen of death," may be displayed. It is also possible for a third error to occur when the system tries to run the double fault handler, something known as a triple fault.
Common causes of double faults include physical problems in the computer’s memory, CPU, or video card as well as bugs in a device driver or other system software. It is rare for user-level applications to trigger such an error, although certain viruses and other types of malware can do so. Common troubleshooting steps that may resolve a double fault include verifying memory modules through special software tools, updating the computer’s basic input output system (BIOS), and ensuring that all system software is up to date and free of viruses and spyware. Users should also ensure that their computers receive adequate ventilation and are free of dust or other debris, as excessive heating of the machine’s components can lead to a double fault.