ExIsProcessorFeaturePresent 函数 (wdm.h)
ExIsProcessorFeaturePresent 例程查询是否存在指定的处理器功能。
语法
BOOLEAN ExIsProcessorFeaturePresent(
[in] ULONG ProcessorFeature
);
参数
[in] ProcessorFeature
指定以下常量值之一:
PF_FLOATING_POINT_PRECISION_ERRATA
处理器有一个奔驰浮点除 bug。
PF_FLOATING_POINT_EMULATED
处理器没有浮点硬件。
PF_COMPARE_EXCHANGE_DOUBLE
处理器有一个 8 字节的内存锁定比较和交换(CMPXCHG8B)指令。
PF_MMX_INSTRUCTIONS_AVAILABLE
处理器支持硬件中的 MMX 指令。
PF_XMMI_INSTRUCTIONS_AVAILABLE
处理器支持硬件中的 SSE 指令。
PF_3DNOW_INSTRUCTIONS_AVAILABLE
处理器支持 AMD 3DNow 指令。
PF_RDTSC_INSTRUCTION_AVAILABLE
处理器支持读取时间戳计数器 (RDTSC) 指令。
PF_PAE_ENABLED
处理器实现物理地址扩展(PAE)支持。
PF_XMMI64_INSTRUCTIONS_AVAILABLE
处理器支持硬件中的 SSE2 指令。 此参数值仅在 Windows XP 和更高版本的 Windows 中受支持。
PF_SSE_DAZ_MODE_AVAILABLE
处理器支持 SSE 指令的非规范为零(DAZ)模式。 此参数值仅在 Windows Vista 和更高版本的 Windows 中受支持。
PF_NX_ENABLED
启用数据执行预防。 此参数值仅在 Windows Vista 和更高版本的 Windows 中受支持。
PF_SSE3_INSTRUCTIONS_AVAILABLE
处理器支持 SSE3 指令。 此参数值仅在 Windows Vista 和更高版本的 Windows 中受支持。
PF_COMPARE_EXCHANGE128
原子比较和交换 128 位作(CMPXCHG16B)可用。 此参数值仅在 Windows Vista 和更高版本的 Windows 中受支持。
PF_COMPARE64_EXCHANGE128
原子比较 64 位和交换 128 位作(CMP8XCHG16)可用。 此参数值仅在 Windows Vista 和更高版本的 Windows 中受支持。
PF_XSAVE_ENABLED
处理器支持 XSAVE 和 XRSTOR 指令。 此参数值仅在 Windows 7 及更高版本中受支持。
返回值
如果存在指定的处理器功能,则 ExIsProcessorFeaturePresent 返回 TRUE;否则,它将返回 FALSE。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 从 Windows 2000 开始可用。 |
目标平台 | 普遍 |
标头 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
库 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |
DDI 符合性规则 | HwStorPortProhibitedDIS(storport)、IrqlExPassive(wdm)、PowerIrpDDis(wdm) |