作者
QQ群:852283276
微信:arm80x86
微信公众号:青儿创客基地
B站:主页 https://space.bilibili.com/208826118
访问MEM IO资源
Mapping Bus-Relative Addresses to Virtual Addresses
连接中断
Using Message-Signaled Interrupts
IoConnectInterrupt
MSI必须使用 IoConnectInterruptEx,参考WdmlibIoConnectInterruptEx
#define IoConnectInterruptEx WdmlibIoConnectInterruptEx
NTSTATUS WdmlibIoConnectInterruptEx(
PIO_CONNECT_INTERRUPT_PARAMETERS Parameters
);
IO_CONNECT_INTERRUPT_PARAMETERS 的构造参考Using the CONNECT_MESSAGE_BASED Version of IoConnectInterruptEx
Using the CONNECT_LINE_BASED Version of IoConnectInterruptEx
Using the CONNECT_FULLY_SPECIFIED Version of IoConnectInterruptEx
DPC
DPC Objects and DPCs
有两种DPC,一种是WDM驱动集成的DpcForIsr,使用方法参考Registering and Queuing a DpcForIsr Routine,第二个是CustomDpc,参考Registering and Queuing a CustomDpc Routine,CustomDpc又分为CustomThreadedDpc和CustomTimerDpc, CustomThreadedDpc参考Threaded DPCsCustomTimerDpc参考KeXxxTimer Routines, KTIMER Objects, and DPCs。