cpu存在三种相似的机制,中断(interrupt),陷入(trap),异常(exception)

cpu对这三种机制的响应基本相同: 在执行完当前指令之后,根据发出机制信号的源提供的”向量”(ip+pc)在内存中找到相应的服务程序

中断硬件支持

早期16位:8259直接连cpu,没有cpu运行模式的区别,直接运行

增加了ring特权级之后,光使用8259不能切换特权级别,需要对中断向量进行修改

中断向量的表项从单纯的入口地址改为了类似PSW加入口地址的项,称为”门”,意为中断发生时必须先通过这些门才能进入相应的服务程序,只要想切换cpu的优先级别,都要通过一道门

cpu中共有四种门:任务门,中断门,陷入门和调用门

任务门

大小为64位

Screenshot_20220320_103343.png

TSS为任务选择段(task state segment),TSS段选择码通过GDT或LDT结合指向具体的TSS

TSS保存了任务运行现场的相关状态(上下文)

Task State Segment

中断门,陷入门,调用门

这三种门的结构大同小异

Screenshot_20220320_104946.png