IsProcessorFeaturePresent 函式 (processthreadsapi.h)
判斷目前計算機是否支援指定的處理器功能。
語法
BOOL IsProcessorFeaturePresent(
[in] DWORD ProcessorFeature
);
參數
[in] ProcessorFeature
要測試的處理器功能。 此參數可以是下列其中一個值。
值 | 意義 |
---|---|
|
64 位載入/存放區不可部分完成的指令可供使用。 |
|
分割指令可供使用。 |
|
外部快取可供使用。 |
|
浮點乘積指令可供使用。 |
|
VFP/Neon:32 x 64 位緩存器銀行存在。 此旗標的意義與 PF_ARM_VFP_EXTENDED_REGISTERS相同。 |
|
3D-Now 指令集可供使用。 |
|
處理器通道已啟用。 |
|
(cmpxchg) 提供不可部分完成的比較和交換作業。 |
|
(cmpxchg16b) 提供不可部分完成的比較和交換 128 位作業。
Windows Server 2003 和 Windows XP/2000: 不支援此功能。 |
|
可以使用不可部分完成的比較 64 和 exchange 128 位作業, (cmp8xchg16) 。
Windows Server 2003 和 Windows XP/2000: 不支援此功能。 |
|
_fastfail () 可供使用。 |
|
浮點運算是使用軟體模擬器模擬。
如果模擬浮點運算,此函式會傳回非零值;否則,它會傳回零。 |
|
在 Pentium 上,浮點精確度錯誤可能發生在罕見的情況下。 |
|
MMX 指令集可供使用。 |
|
已啟用數據執行防護。 Windows XP/2000: 在 WINDOWS XP SP2 和 Windows Server 2003 SP1 之前,不支援此功能。 |
|
處理器已啟用PAE。 如需詳細資訊,請參閱 實體位址延伸模組。
所有 x64 處理器一律會傳回此功能的非零值。 |
|
RDTSC 指令可供使用。 |
|
提供 RDFSBASE、RDGSBASE、WRFSBASE 和 WRGSBASE 指示。 |
|
硬體支援第二層地址轉譯。 |
|
SSE3 指令集可供使用。
Windows Server 2003 和 Windows XP/2000: 不支援此功能。 |
|
SSSE3 指令集可供使用。 |
|
SSE4_1指令集可供使用。 |
|
SSE4_2指令集可供使用。 |
|
AVX 指令集可供使用。 |
|
AVX2 指令集可供使用。 |
|
AVX512F指令集可供使用。 |
|
虛擬化會在韌體中啟用,並可供操作系統使用。 |
|
SSE 指令集可供使用。 |
|
SSE2 指令集可供使用。
Windows 2000: 不支援此功能。 |
|
處理器會實作 XSAVE 和 XRSTOR 指令。
Windows Server 2008、Windows Vista、Windows Server 2003 和 Windows XP/2000: 在 Windows 7 和 Windows Server 2008 R2 之前,不支援此功能。 |
|
此 Arm 處理器會實作 Arm v8 指令集。 |
|
此 Arm 處理器會實作 Arm v8 額外的密碼編譯指示 (,例如 AES、SHA1 和 SHA2) 。 |
|
此 Arm 處理器會實作 Arm v8 額外的 CRC32 指示。 |
|
此 Arm 處理器會實作 Arm v8.1 不可部分完成的指令 (,例如 CAS、SWP) 。 |
|
此 Arm 處理器會實作 Arm v8.2 DP 指令 (,例如 SDOT、UDOT) 。 這項功能在 Arm v8.2 實作中是選擇性的,在 Arm v8.4 實作中為必要專案。 |
|
此 Arm 處理器會實作 Arm v8.3 JSCVT 指令 (,例如 FJCVTZS) 。 |
|
此 Arm 處理器會實作 Arm v8.3 LRCPC 指令 (,例如 LDAPR) 。 請注意,某些 Arm v8.2 CPU 可以選擇性地支援 LRCPC 指示。 |
傳回值
如果支援此功能,則傳回值為非零值。
如果不支援此功能,則傳回值為零。
如果 HAL 不支援偵測功能,無論硬體是否支援此功能,傳回值也是零。
備註
PF_SSSE3_INSTRUCTIONS_AVAILABLE
PF_AVX512F_INSTRUCTIONS_AVAILABLE
Windows SDK (19041) 新增了) 的支援,Windows 10 且支援版本 2004 (2020 年 5 月更新) 或更新版本。
PF_ERMS_AVAILABLE
Windows SDK (20348) 中新增了 、 PF_ARM_V82_DP_INSTRUCTIONS_AVAILABLE
和 PF_ARM_V83_JSCVT_INSTRUCTIONS_AVAILABLE
的支援,且由 Windows 11 和 Windows Server 2022 支援。
定義PF_ARM_V83_LRCPC_INSTRUCTIONS_AVAILABLE
已新增至 Windows SDK (22621) ,且 Windows 11 版本 22H2 支援。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 2000 專業版 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows 2000 Server [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | processthreadsapi.h (包含 Windows.h) |
程式庫 | Kernel32.lib |
DLL | Kernel32.dll |