Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
General protection fault
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{Short description|Fault initiated by x86 processors due to an access violation}} {{Multiple issues| {{technical|date=June 2015}} {{refimprove|date=January 2017}} }} {{multiple image | align = right | direction = vertical | width = 220 | image1 = Unrecoverable Application Error.png | alt1 = Error message in a white dialog box stating "UNRECOVERABLE APPLICATION ERROR: Terminating current application." | caption1 = Generic error message for a general protection fault (Unrecoverable Application Error) in [[Windows 3.0]] | image2 = General Protection Fault example in Windows 3.1.png | alt2 = Error message for a general protection fault in Windows 3.1x | caption2 = Example error message for a general protection fault in [[Windows 3.1x]] }} A '''general protection fault''' ('''GPF''') in the [[x86]] [[instruction set architecture]]s (ISAs) is a [[Fault (computing)|fault]] (a type of [[interrupt]]) initiated by ISA-defined protection mechanisms in response to an access violation caused by some running code, either in the [[Kernel (operating system)|kernel]] or a user program. The mechanism is first described in Intel manuals and datasheets for the [[Intel 80286]] CPU, which was introduced in 1983; it is also described in section 9.8.13 in the [[Intel 80386]] programmer's reference manual from 1986. A general protection fault is implemented as an interrupt ([[interrupt vector|vector]] number 13 (0Dh)). Some [[operating system]]s may also classify some exceptions not related to access violations, such as illegal [[opcode]] exceptions, as general protection faults, even though they have nothing to do with memory protection. If a CPU detects a protection violation, it stops executing the code and sends a GPF interrupt. In most cases, the operating system removes the failing [[Process (computing)|process]] from the execution queue, signals the user, and continues executing other processes. If, however, the operating system fails to catch the general protection fault, i.e. another protection violation occurs before the operating system returns from the previous GPF interrupt, the CPU signals a [[double fault]], stopping the operating system. If yet another failure ([[triple fault]]) occurs, the CPU is unable to recover; since 80286, the CPU enters a special halt state called "Shutdown", which can only be exited through a [[hardware reset]]. The [[IBM Personal Computer AT|IBM PC AT]], the first [[PC-compatible]] system to contain an 80286, has hardware that detects the Shutdown state and automatically resets the CPU when it occurs. All descendants of the PC AT do the same, so in a PC, a triple fault causes an immediate system reset.
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)