【发布时间】:2011-03-27 09:53:12
【问题描述】:
正如英特尔手册所示,中断门和陷阱门都可用于访问处理程序例程。有些异常甚至与中断共享向量号。我想知道当 CPU 检测到这样的共享向量时,CPU 怎么知道它代表异常还是中断?
我对以下几件事的逻辑有点困惑:
IDT 中门类型的决定
判断向量代表异常还是中断
哪个决定哪个?
我希望我说清楚了......
更新 1
感谢 nos 的回复。你的意思是我必须告诉 CPU 哪个向量代表中断或陷阱?我知道 CPU 在中断和陷阱方面对 EFLAGS[IF] 的处理方式不同,CPU 怎么知道如何做出这个决定? CPU 是否根据向量对应的 IDT 条目的类型字段做出决策?或者更确切地说,这取决于系统是如何连接的,我们必须根据它设置 IDT 条目的类型?即类型文件完全是对我们的说明还是对 CPU 的必要性?
还有一个相关问题:The difference between Call Gate, Interrupt Gate, Trap Gate?
【问题讨论】:
标签: assembly x86 operating-system intel interrupted-exception