KeQueryMaximumProcessorCount 関数 (wdm.h)
KeQueryMaximumProcessorCount ルーチンは、プロセッサの最大数を返します。
ULONG KeQueryMaximumProcessorCount();
KeQueryMaximumProcessorCount は、プロセッサの最大数を ULONG 値として返します。
KeQueryMaximumProcessorCount ルーチンによって返される値は、実行時に変更されません。
コードでバッファーの配列 (プロセッサごとに 1 つのバッファー) を使用する場合は、KeQueryMaximumProcessorCount に基づいて静的なサイズの配列を使用するか、KeQueryActiveProcessorCount に基づいて動的にサイズ設定された配列するかを決定する必要があります。
プロセッサの数に基づいて最適化するには、Windows Server 2008 のサイズ変更可能な構造が必要です。 この場合は、KeQueryActiveProcessorCountを使用します。
最適化を行っていない場合や、最大プロセッサ数を使用した結果として得られたデータ構造が比較的小さい場合は、サイズ変更可能な構造体は必要ありません。 この場合 KeQueryMaximumProcessorCount を使用して、静的配列のサイズを決定します。
Windows 7 以降のバージョンの Windows では、プロセッサ グループがサポートされています。 プロセッサ グループに関する情報を処理するように設計されたドライバーでは、KeQueryMaximumProcessorCount ではなく、プロセッサ グループを指定する KeQueryMaximumProcessorCountEx ルーチン使用する必要があります。 ただし、Windows 7 以降のバージョンの Windows KeQueryMaximumProcessorCount の実装では、プロセッサ グループをサポートしていない以前のバージョンの Windows 用に作成されたドライバーの互換性が提供されます。 この実装では、KeQueryMaximumProcessorCount は、グループ 0 に含めることができる論理プロセッサの最大数を返します。
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows Vista 以降のバージョンの Windows で使用できます。 |
ターゲット プラットフォーム の | 万国 |
ヘッダー | wdm.h (Wdm.h、Ntddk.h を含む) |
ライブラリ | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | 任意のレベル |