一般保护错误

一般保护错误（，缩写：GPF）是在英特尔x86和AMDx86-64架构和其它架构中的一种错误（或者一种中断），指正在运行的程序（内核或用户态程序）违反处理器架构中的保护措施的情况。此机制最初在1986年英特尔80386处理器的程序员参考手册第9.8.13节中描述。一般保护错误通过中断（向量值13）实现。

若处理器侦测到保护违例，会停止当前代码的执行，并发出GPF中断。大多数情形下，操作系统会简单地关闭触发GPF的进程，告知用户，并继续执行其它程序。但如果操作系统没能捕获这一错误（如在操作系统从GPF中断处理例程中返回前发生了另一次违例），处理器会发出双重错误（中断向量值8，一种常见的蓝屏情形）。如果再次发生了违例，则处理器会关闭（参见三重错误），其后只会响应复位（即按下机器的复位按钮）、启动（重新启动系统）或不可屏蔽中断（除非其之前在处理此类中断时出错）。

 操作系统行为 
在一些版本的Microsoft Windows中，一般保护错误确实会被报告为“一般保护错误”。

但在大部分版本中，Windows会给出如下错误：

 Unrecoverable Application Error.（Windows 3.0）
 [程序] has caused a General Protection Fault in module [模块] at [内存地址].（Windows 3.1和3.1x）
 该程序执行了非法操作，即将关闭。（Windows 9x & Windows NT 4.0）
 [程序]产生了错误，会被Windows关闭。（Windows 2000）
 [程序] has caused an error in [模块]. [程序] will now close.（Windows Me）
 [程序/描述]-{zh-hans:遇到问题需要关闭。我们对此引起的不便表示抱歉。;zh-hant:發生問題，必須關閉。謹此致歉。}-（Windows XP）
 [程序/描述]已停止工作。（Windows Vista和Windows 7）

在类Unix的系统中，此错误会被分别报告（比如Linux下的段错误等）。

Category:操作系统技术
Category:计算机错误