音频驱动程序的规则

音频 (PortCls) 微型端口驱动程序的 DDI 符合性规则验证PortCls.sys与其微型端口驱动程序之间的 DDI 接口。

在本节中

主题 说明

PcAddAdapterDevice

PcAddAdapterDevice 规则指定 PortCls 微型端口驱动程序正确使用 PcAddAdapterDevice 函数,具体而言, DeviceExtensionSize 应为零 (0) 或不小于 PORT_CLASS_DEVICE_EXTENSION_SIZE。

PcAllocateAndMapPages

PcAllocateAndMapPages 规则指定 PortCls 微型端口驱动程序使用正确的参数调用以下接口:

  • IPortWaveRTStream::AllocatePagesForMdl
  • IPortWaveRTStream::AllocateContiguousPagesForMdl
  • IPortWaveRTStream::MapAllocatedPages

PcAllocatedPages

PcAllocatedPages 规则指定 PortCls 微型端口驱动程序通过调用 AllocatePagesForMdl 或 AllocateContiguousPagesForMdl 方法释放以前分配的页面。

PcIrqlDDIs

PcIrqlDDI 规则指定 PortCls 微型端口驱动程序必须在正确的 IRQL 级别调用 PortCls DDI。

PcIrqlIport

PcIrqlIport 规则指定 PortCls 微型端口驱动程序必须在正确的 IRQL 级别调用 PortCls IPort 接口。

PcPoRequestPowerIrp

此规则验证 PortCls 微型端口驱动程序不应使用 IRP_MN_SET_POWER调用 PoRequestPowerIrp

PcPropertyRequest

PcPropertyRequest 规则指定 PortCls 微型端口驱动程序绝不应调用 NtStatus 值为 STATUS_PENDING 的 PcCompletePendingPropertyRequest

PcRegisterAdapterPower

PcRegisterAdapterPower 规则指定 PortCls 微型端口驱动程序不应:

PcTimedWaveRtStreamSetState

PcTimedWaveRtStreamSetState 规则指定 ProtCls 微型端口驱动程序在所需时间内通过 IMiniportWaveRTStream::SetState 进行状态转换。

PcUnmapAllocatedPages

PcUnmapAllocatedPages 规则指定:

  • PortCls 微型端口驱动程序不会在未首先取消映射的情况下映射当前映射的 MDL。
  • 在使用 IMiniportWaveRTStream 接口释放内存之前,PortCls 微型端口驱动程序会取消映射内存。