2014年7月24日 中断门、陷阱门及中断门
中断是可以禁止的,可以通过告诉PIC停止对某个中断的发布。被禁止的中断是不会丢失的,在解除禁止后又会发送到CPU上。
禁止中断和屏蔽(mask)中断的不同之处是屏蔽是忽略掉某个中断,而禁止相当于延迟发送。
Intel提供了三种类型的中断描述符:任务门、中断门及陷阱门描述。linux使用与inten稍有不同的细分分类和术语,把他们进行如下分类:
中断门:用户态进程不能访问的一个intel中断门(DPL为0),所有的linux中断处理程序都通过中断门在内核态进行调用。
系统门:用户态进程可以访问的一个intel陷阱门(DPL为3),通过系统门来访问三个linux异常处理程序,在用户态下可以通过三个汇编指令来访问:into,bound,int $0x80。
系统中断门:用户态进程主要通过这个门来使用系统调用(DPL为3),通过int $3汇编指令来进入。
陷阱门:用户态进程不能访问的intel陷阱门(DPL为0),大部分linux异常处理程序通过这个门进入。
任务门:用户态进程不能访问的intel任务门(DPL为0),“Double Fault”(通常表示内后有严重的错误)异常使用通过这个门进入的。
Linux 2.6 内核阅读笔记 中断和异常,布布扣,bubuko.com
时间: 2024-12-21 12:54:55