SYSTEM_INFO構造体 (sysinfoapi.h)

現在のコンピューター システムに関する情報が含まれます。 これには、プロセッサのアーキテクチャと種類、システム内のプロセッサの数、ページ サイズ、およびその他の情報が含まれます。

構文

typedef struct _SYSTEM_INFO {
  union {
    DWORD dwOemId;
    struct {
      WORD wProcessorArchitecture;
      WORD wReserved;
    } DUMMYSTRUCTNAME;
  } DUMMYUNIONNAME;
  DWORD     dwPageSize;
  LPVOID    lpMinimumApplicationAddress;
  LPVOID    lpMaximumApplicationAddress;
  DWORD_PTR dwActiveProcessorMask;
  DWORD     dwNumberOfProcessors;
  DWORD     dwProcessorType;
  DWORD     dwAllocationGranularity;
  WORD      wProcessorLevel;
  WORD      wProcessorRevision;
} SYSTEM_INFO, *LPSYSTEM_INFO;

メンバー

DUMMYUNIONNAME

DUMMYUNIONNAME.dwOemId

互換性のために保持される古いメンバー。 アプリケーションでは、共用体の wProcessorArchitecture ブランチを使用する必要があります。

DUMMYUNIONNAME.DUMMYSTRUCTNAME

DUMMYUNIONNAME.DUMMYSTRUCTNAME.wProcessorArchitecture

インストールされているオペレーティング システムのプロセッサ アーキテクチャ。 このメンバーには、次のいずれかの値を指定できます。

意味
PROCESSOR_ARCHITECTURE_AMD64
9
x64 (AMD または Intel)
PROCESSOR_ARCHITECTURE_ARM
5
ARM
PROCESSOR_ARCHITECTURE_ARM64
12
ARM64
PROCESSOR_ARCHITECTURE_IA64
6
Intel Itanium ベース
PROCESSOR_ARCHITECTURE_INTEL
0
x86
PROCESSOR_ARCHITECTURE_UNKNOWN
0xffff
不明なアーキテクチャ。

DUMMYUNIONNAME.DUMMYSTRUCTNAME.wReserved

このメンバーは将来使用するために予約されています。

dwPageSize

ページ のサイズと、ページ保護とコミットメントの細分性。 これは、 VirtualAlloc 関数で使用されるページ サイズです。

lpMinimumApplicationAddress

アプリケーションとダイナミック リンク ライブラリ (DLL) からアクセスできる最小メモリ アドレスへのポインター。

lpMaximumApplicationAddress

アプリケーションと DLL からアクセスできる最も高いメモリ アドレスへのポインター。

dwActiveProcessorMask

システムに構成されたプロセッサのセットを表すマスク。 ビット 0 はプロセッサ 0 です。ビット 31 はプロセッサ 31 です。

dwNumberOfProcessors

現在のグループ内の論理プロセッサの数。 現在のプロセッサ グループを取得するには、 GetLogicalProcessorInformation 関数を使用します。

メモ論理プロセッサによって共有される物理プロセッサの詳細については、RelationshipType パラメーターを RelationProcessorPackage (3) に設定して GetLogicalProcessorInformationEx を呼び出します。
 

dwProcessorType

互換性のために保持される古いメンバー。 プロセッサの種類を決定するには、 wProcessorArchitecturewProcessorLevelおよび wProcessorRevision メンバーを使用します。

PROCESSOR_INTEL_386 (386)

PROCESSOR_INTEL_486 (486)

PROCESSOR_INTEL_PENTIUM (586)

PROCESSOR_INTEL_IA64 (2200)

PROCESSOR_AMD_X8664 (8664)

PROCESSOR_ARM (予約済み)

dwAllocationGranularity

仮想メモリを割り当てることができる開始アドレスの細分性。 詳細については、「 VirtualAlloc」を参照してください。

wProcessorLevel

アーキテクチャに依存するプロセッサ レベル。 表示目的でのみ使用する必要があります。 プロセッサの機能セットを確認するには、 IsProcessorFeaturePresent 関数を 使用します。

wProcessorArchitecture がPROCESSOR_ARCHITECTURE_INTEL場合、wProcessorLevel は CPU ベンダーによって定義されます。

wProcessorArchitecture がPROCESSOR_ARCHITECTURE_IA64場合、wProcessorLevel は 1 に設定されます。

wProcessorRevision

アーキテクチャに依存するプロセッサ リビジョン。 次の表は、プロセッサ アーキテクチャの種類ごとにリビジョン値がどのようにアセンブルされるかを示しています。

プロセッサ
Intel Pentium、Cyrix、または NextGen 586 上位バイトはモデルで、下位バイトはステッピングです。 たとえば、値が xxyy の場合、モデル番号とステップ実行は次のように表示できます。

モデル xx、ステップ yy

Intel 80386 または 80486 xxyz 形式の値。

xx が0xFFと等しい場合、y - 0xA はモデル番号、z はステップ識別子です。

xx が0xFFと等しくない場合、xx + 'A' はステッピング文字で、yz はマイナー ステップです。

ARM 予約済み。

必要条件

要件
サポートされている最小のクライアント Windows 2000 Professional [デスクトップ アプリ |UWP アプリ]
サポートされている最小のサーバー Windows 2000 Server [デスクトップ アプリ |UWP アプリ]
Header sysinfoapi.h (Windows.h を含む)

こちらもご覧ください

GetNativeSystemInfo

GetSystemInfo

MapViewOfFile

MapViewOfFileEx