WDF_EXECUTION_LEVEL枚举 (wdfobject.h)

[适用于 KMDF 和 UMDF]

WDF_EXECUTION_LEVEL枚举类型指定框架将调用驱动程序为框架对象提供的事件回调函数的最大 IRQL。

语法

typedef enum _WDF_EXECUTION_LEVEL {
  WdfExecutionLevelInvalid,
  WdfExecutionLevelInheritFromParent,
  WdfExecutionLevelPassive,
  WdfExecutionLevelDispatch
} WDF_EXECUTION_LEVEL;

常量

 
WdfExecutionLevelInvalid
预留给系统使用。
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 值:

  • 框架驱动程序对象
  • 框架设备对象
  • 框架文件对象
  • 框架常规对象
  • 框架队列对象 (Framework 版本 1.9 及更高版本)
  • 框架计时器对象 (Framework 版本 1.9 及更高版本)
KMDF 默认情况下,框架将框架驱动程序对象的 ExecutionLevel 值设置为 WdfExecutionLevelDispatch。

UMDF 默认情况下,框架将框架驱动程序对象的 ExecutionLevel 值设置为 WdfExecutionLevelPassive。

所有其他对象的默认 ExecutionLevel 值为 WdfExecutionLevelInheritFromParent。

有关事件回调函数的执行级别的详细信息,请参阅 适用于Framework-Based驱动程序的同步技术

要求

   
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
Header wdfobject.h (包括 Wdf.h)

另请参阅

WDF_OBJECT_ATTRIBUTES