次の方法で共有


KeQueryActiveGroupCount 関数 (wdm.h)

KeQueryActiveGroupCount ルーチンは、マルチプロセッサ システム内のアクティブなプロセッサ グループの数を返します。

構文

USHORT KeQueryActiveGroupCount();

戻り値

KeQueryActiveGroupCount は 、アクティブなグループの数を返します。

注釈

1 つ以上のアクティブな論理プロセッサが含まれている場合、プロセッサ グループはアクティブです。

アクティブな論理プロセッサは、Windows が起動してマルチプロセッサ システムに追加した論理プロセッサです。 "アクティブ プロセッサ" という用語は、プロセッサが現在処理作業を実行しているかアイドル状態であるかに関係なく、処理作業を実行できるプロセッサに適用されます。 一部のシステムでは、システムの起動からシャットダウンまで、アクティブなプロセッサの数が変更されない場合があります。 他のシステムでは、システムの実行中に、Windows によってアクティブなプロセッサが動的に追加される場合があります。 Windows では、システムからアクティブなプロセッサが削除されることはありません。

したがって、マルチプロセッサ システム内のアクティブプロセッサの数は、システムの起動とシャットダウンの間に増加する可能性がありますが、この数は減少することはありません。 同様に、システムの実行中にプロセッサが非アクティブグループに動的に追加されると、システム内のアクティブなグループの数が増える可能性があります。 アクティブなグループの数が減ることはありません。

これに対し、 KeQueryMaximumGroupCount によって返される値は実行時に一定のままです。 この値は、システムで使用できるグループの最大数です。

KeQueryActiveProcessorCountEx ルーチンを呼び出して、特定のグループ内のアクティブな論理プロセッサの数を決定します。

Windows 7 は、プロセッサ グループをサポートする Windows の最初のバージョンです。 Windows 7 では、64 ビット バージョンの Windows のみが複数のグループをサポートしています。32 ビット バージョンの Windows では、1 つのグループのみがサポートされます。 マルチプロセッサ システムが 64 ビット バージョンの Windows を実行していて、64 個以下の論理プロセッサが含まれている場合、Windows はすべてのプロセッサをグループ 0 に割り当てます。 32 ビット バージョンの Windows を実行しているマルチプロセッサ システムには、32 個以下のプロセッサを含めることができます。

要件

要件
サポートされている最小のクライアント Windows 7 以降で使用できます。
対象プラットフォーム ユニバーサル
Header wdm.h (Ntddk.h、Wdm.h、Ntddk.h を含む)
Library NtosKrnl.lib
[DLL] NtosKrnl.exe
IRQL 任意のレベル

こちらもご覧ください

KeQueryActiveProcessorCountEx

KeQueryMaximumGroupCount