SYSTEM_INFO structure (sysinfoapi.h)
Contient des informations sur le système informatique actuel. Cela inclut l’architecture et le type du processeur, le nombre de processeurs dans le système, la taille de la page et d’autres informations de ce type.
Syntaxe
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;
Membres
DUMMYUNIONNAME
DUMMYUNIONNAME.dwOemId
Membre obsolète conservé à des fins de compatibilité. Les applications doivent utiliser la branche wProcessorArchitecture de l’union.
DUMMYUNIONNAME.DUMMYSTRUCTNAME
DUMMYUNIONNAME.DUMMYSTRUCTNAME.wProcessorArchitecture
Architecture du processeur du système d’exploitation installé. Ce membre peut être l’une des valeurs suivantes.
DUMMYUNIONNAME.DUMMYSTRUCTNAME.wReserved
Ce membre est réservé pour un usage ultérieur.
dwPageSize
Taille de la page et granularité de la protection et de l’engagement des pages. Il s’agit de la taille de page utilisée par la fonction VirtualAlloc .
lpMinimumApplicationAddress
Pointeur vers l’adresse mémoire la plus basse accessible aux applications et aux bibliothèques de liens dynamiques (DLL).
lpMaximumApplicationAddress
Pointeur vers l’adresse mémoire la plus élevée accessible aux applications et aux DLL.
dwActiveProcessorMask
Masque représentant l’ensemble des processeurs configurés dans le système. Le bit 0 est le processeur 0 ; bit 31 est le processeur 31.
dwNumberOfProcessors
Nombre de processeurs logiques dans le groupe actuel. Pour récupérer le groupe de processeurs actuel, utilisez la fonction GetLogicalProcessorInformation .
dwProcessorType
Membre obsolète conservé à des fins de compatibilité. Utilisez les membres wProcessorArchitecture, wProcessorLevel et wProcessorRevision pour déterminer le type de processeur.
PROCESSOR_INTEL_386 (386)
PROCESSOR_INTEL_486 (486)
PROCESSOR_INTEL_PENTIUM (586)
PROCESSOR_INTEL_IA64 (2200)
PROCESSOR_AMD_X8664 (8664)
PROCESSOR_ARM (réservé)
dwAllocationGranularity
Granularité de l’adresse de départ à laquelle la mémoire virtuelle peut être allouée. Pour plus d’informations, consultez VirtualAlloc.
wProcessorLevel
Niveau du processeur dépendant de l’architecture. Il doit être utilisé uniquement à des fins d’affichage. Pour déterminer l’ensemble de fonctionnalités d’un processeur, utilisez la fonction IsProcessorFeaturePresent .
Si wProcessorArchitecture est PROCESSOR_ARCHITECTURE_INTEL, wProcessorLevel est défini par le fournisseur du processeur.
Si wProcessorArchitecture est PROCESSOR_ARCHITECTURE_IA64, wProcessorLevel a la valeur 1.
wProcessorRevision
Révision du processeur dépendant de l’architecture. Le tableau suivant montre comment la valeur de révision est assemblée pour chaque type d’architecture de processeur.
Processeur | Valeur |
---|---|
Intel Pentium, Cyrix ou NextGen 586 | L’octet élevé est le modèle et l’octet faible est le pas à pas. Par exemple, si la valeur est xxyy, le numéro de modèle et le pas à pas peuvent être affichés comme suit : Modèle xx, Stepping yy |
Intel 80386 ou 80486 | Valeur de la forme xxyz.
Si xx est égal à 0xFF, y - 0xA est le numéro de modèle et z l’identificateur pas à pas. Si xx n’est pas égal à 0xFF, xx + 'A' est la lettre pas à pas et yz le pas à pas mineur. |
ARM | Réservé. |
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau | Applications UWP] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau | Applications UWP] |
En-tête | sysinfoapi.h (inclure Windows.h) |