On the x86 architecture, a double fault exception occurs if the processor encounters a problem while trying to service a pending interrupt or exception. An example situation when a double fault would occur is when an interrupt is triggered but the segment in which the interrupt handler resides is invalid. If the processor encounters a problem when calling the double fault handler, a triple fault is generated and the processor shuts down.
As double faults can only happen due to kernel bugs, they are rarely caused by user space programs in a modern protected mode operating system, unless the program somehow gains kernel access (some viruses and also some low-level DOS programs). Other processors like PowerPC or SPARC generally save state to predefined and reserved machine registers. A double fault will then be a situation where another exception happens while the processor is still using the contents of these registers to process the exception. SPARC processors have four levels of such registers, i.e. they have a 4-window register system.
Famous quotes containing the words double and/or fault:
“Societys double behavioral standard for women and for men is, in fact, a more effective deterrent than economic discrimination because it is more insidious, less tangible. Economic disadvantages involve ascertainable amounts, but the very nature of societal value judgments makes them harder to define, their effects harder to relate.”
—Anne Tucker (b. 1945)
“It is almost always a fault of one who loves not to realize when he ceases to be loved.”
—François, Duc De La Rochefoucauld (16131680)