Chinaunix首页 | 论坛 | 博客
  • 博客访问: 225763
  • 博文数量: 86
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 256
  • 用 户 组: 普通用户
  • 注册时间: 2014-03-12 15:39
文章分类

全部博文(86)

文章存档

2016年(20)

2015年(65)

2014年(1)

我的朋友

分类: LINUX

2015-07-07 11:18:22

原文地址:中断门和陷阱门的区别 作者:BENNYSNAKE

什么是中断门?
中断门是x86的一种指向(code,data,stack)段描述符的一种特殊的段描述符,也就是system   segment,而code,data,stack则为user   segment. 当中断产生的时候,中断向量在IDT表中获得中断门,然后根据中断门中对应的segment   selector定位获得GDT或LDT中的code   segment,获得中断服务历程的entry地址。
 
中断门和陷阱门的区别
通过中断门的转移和通过陷阱门的转移之间的差别只是对IF标志的处理。对于中断门,在转移过程中把IF置为0,使得在处理程序执行期间屏蔽掉INTR中断(当然,在中断处理程序中可以人为设置IF标志打开中断,以使得在处理程序执行期间允许响应可屏蔽中断);对于陷阱门,在转移过程中保持IF位不变,即如果IF位原来是1,那么通过陷阱门转移到处理程序之后仍允许INTR中断。因此,中断门最适宜于处理中断,而陷阱门适宜于处理异常。
阅读(1062) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

L_5020912502015-07-07 11:19:20

中断门和陷阱门描述中断/异常处理程序的人口点。中断门和陷阱门内的选择子必须指向代码段描述符,门内的偏移就是对应代码段的人口点的偏移。中断门和陷阱门只有在中断描述符表IDT中才有效。关于中断门和陷阱门的区别将在以后的文章中论述。