[适用于 KMDF 和 UMDF]
WDF_EXECUTION_LEVEL枚举类型指定框架将调用驱动程序为框架对象提供的事件回调函数的最大 IRQL。
语法
typedef enum _WDF_EXECUTION_LEVEL {
WdfExecutionLevelInvalid = 0x00,
WdfExecutionLevelInheritFromParent,
WdfExecutionLevelPassive,
WdfExecutionLevelDispatch
} WDF_EXECUTION_LEVEL;
常量
WdfExecutionLevelInvalid 值:0x00 保留供系统使用。 |
WdfExecutionLevelInheritFromParent 框架使用对象的父级的最大 IRQL 值,除非该对象是需要 IRQL = DISPATCH_LEVEL(如 DPC 对象)的对象。 如果驱动程序未指定WDF_EXECUTION_LEVEL类型的值,则此值为默认值。 |
WdfExecutionLevelPassive 框架始终在 IRQL = PASSIVE_LEVEL 调用对象的回调函数。 |
WdfExecutionLevelDispatch 框架在 IRQL <= DISPATCH_LEVEL 调用对象的回调函数。 在 UMDF 中不可用。 |
注解
驱动程序使用WDF_EXECUTION_LEVEL枚举类型来指定对象的 WDF_OBJECT_ATTRIBUTES 结构的 ExecutionLevel 成员。
可以为以下对象指定 ExecutionLevel 值:
- 框架驱动程序对象
- 框架设备对象
- 框架文件对象
- 框架常规对象
- 框架队列对象(框架版本 1.9 及更高版本)
- 框架计时器对象(框架版本 1.9 及更高版本)
默认情况下,UMDF ,框架将框架驱动程序对象的 ExecutionLevel 值设置为 WdfExecutionLevelPassive。
所有其他对象的默认 ExecutionLevel 值 WdfExecutionLevelInheritFromParent。
有关事件回调函数的执行级别的详细信息,请参阅 Framework-Based 驱动程序 同步技术。
要求
要求 | 价值 |
---|---|
最低 KMDF 版本 | 1.0 |
最低 UMDF 版本 | 2.0 |
标头 | wdfobject.h (包括 Wdf.h) |