ISR:Interrupt Service Routines (中断服务例程
必须马上做的事情,比如硬件中断,响应鼠标点击
DPC:Deferred Procedure Call Details(延迟过程调用
可以推迟做的事情,比如大数据拷贝,U盘拷贝电影。
APC: Asynchronous Procedure Calls(异步过程调用
An asynchronous procedure call (APC) is a function that executes asynchronously in the context of a particular thread. When an APC is queued to a thread, the system issues a software interrupt. The next time the thread is scheduled, it will run the APC function. An APC generated by the system is called a kernel-mode APC. An APC generated by an application is called a user-mode APC. A thread must be in an alertable state to run a user-mode APC.
Windows中断请求级别
IRQL | Interrupts Masked Off | Driver Routines |
---|---|---|
PASSIVE_LEVEL | None | PASSIVE_LEVEL |
APC_LEVEL | APC_LEVEL interrupts | APC_LEVEL |
DISPATCH_LEVEL | DISPATCH_LEVEL ,APC_LEVEL interrupts | DISPATCH_LEVEL |
DIRQL | All interrupts at IRQL<= DIRQL | DIRQL |