测试windows
5.2 windows 中断与异常数据结构
1.外部硬件中断是经过处理器上的中断引脚管或者本地APIC的内置模块来发生的;对于一个处理器,一旦被中单,测试
某个预先被设定的中断服务例程就被执行!线程
2.处理器的内部的IDTR寄存器记录着IDT的位置和它的最大限制,IDTR寄存器为48位。对象
每一个中断描述符号是8字节(共64位)对于 软中断的情形,可避免低特权的代码经过软中断的形式 去执行关键的异常或中断处理的代码!blog
3.内存
APC_LEVEL 一个线程插入一个APC能够打断该线程同步
DISPATCH_LEVEL 一个处理器运行在这个IRQL上 可能正在作两件事情:1.线程调度 2.硬件处理的后半部分 DPCList
不会被其余线程抢占,只有被更高的中断抢占,与线程调度相关的数据结构 只有在此级别才能同步范围硬件
这个是最高级的软中断,不能访问换页内存,由于一旦发生换页就要执行IO操做,因此只能访问非换页内存
InterruptListEntry 与同一个中断向量关联的中断对象双链表,当中断发生 全部的中断对象 都被执行!
每一个中断对象都只能被链接到一个IDT项,若是一个服务例程须要被链接到多个处理器,必须创建多个中断对象。