Tao.Platform.Windows SDK Documentation

Kernel.SYSTEM_INFO Fields

The fields of the Kernel.SYSTEM_INFO structure are listed below. For a complete list of Kernel.SYSTEM_INFO structure members, see the Kernel.SYSTEM_INFO Members topic.

Public Instance Fields

ActiveProcessorMask Mask representing the set of processors configured into the system. Bit 0 is processor 0; bit 31 is processor 31.
AllocationGranularity Granularity with which virtual memory is allocated. For example, a VirtualAlloc request to allocate 1 byte will reserve an address space of AllocationGranularity bytes. This value was hard coded as 64K in the past, but other hardware architectures may require different values.
MaximumApplicationAddress Pointer to the highest memory address accessible to applications and DLLs.
MinimumApplicationAddress Pointer to the lowest memory address accessible to applications and dynamic-link libraries (DLLs).
NumberOfProcessors Number of processors in the system.
PageSize Page size and the granularity of page protection and commitment. This is the page size used by the VirtualAlloc function.
ProcessorLevel System's architecture-dependent processor level. It should be used only for display purposes. To determine the feature set of a processor, use the IsProcessorFeaturePresent function. If SystemInfoUnion.ProcessorArchitecture is PROCESSOR_ARCHITECTURE_INTEL, ProcessorLevel is defined by the CPU vendor. If SystemInfoUnion.ProcessorArchitecture is PROCESSOR_ARCHITECTURE_IA64, ProcessorLevel is set to 1. If SystemInfoUnion.ProcessorArchitecture is PROCESSOR_ARCHITECTURE_MIPS, ProcessorLevel is of the form 00xx, where xx is an 8-bit implementation number (bits 8-15 of the PRId register). The member can be the following value:
Value Description
0004 MIPS R4000
If SystemInfoUnion.ProcessorArchitecture is PROCESSOR_ARCHITECTURE_ALPHA, ProcessorLevel is of the form xxxx, where xxxx is a 16-bit processor version number (the low-order 16 bits of a version number from the firmware). The member can be one of the following values:
Value Description
21064 Alpha 21064
21066 Alpha 21066
21164 Alpha 21164
If SystemInfoUnion.ProcessorArchitecture is PROCESSOR_ARCHITECTURE_PPC, ProcessorLevel is of the form xxxx, where xxxx is a 16-bit processor version number (the high-order 16 bits of the Processor Version Register). The member can be one of the following values:
Value Description
1 PPC 601
3 PPC 603
4 PPC 604
6 PPC 603+
9 PPC 604+
20 PPC 620
ProcessorRevision Architecture-dependent processor revision. The following table shows how the revision value is assembled for each type of processor architecture:
Processor Description
Intel 80386 or 80486

A value of the form xxyz.

If xx is equal to 0xFF, y - 0xA is the model number, and z is the stepping identifier. For example, an Intel 80486-D0 system returns 0xFFD0.

If xx is not equal to 0xFF, xx + 'A' is the stepping letter and yz is the minor stepping.

Intel Pentium, Cyrix, or NextGen 586

A value of the form xxyy, where xx is the model number and yy is the stepping. Display this value of 0x0201 as follows:

Model xx, Stepping yy.

MIPS A value of the form 00xx, where xx is the 8-bit revision number of the processor (the low-order 8 bits of the PRId register).
ALPHA

A value of the form xxyy, where xxyy is the low-order 16 bits of the processor revision number from the firmware. Display this value as follows:

Model A+xx, Pass yy.

PPC

A value of the form xxyy, where xxyy is the low-order 16 bits of the processor version register. Display this value as follows:

xx.yy.

ProcessorType An obsolete member that is retained for compatibility with Windows NT 3.5 and earlier. Use the SystemInfoUnion.ProcessorArchitecture, ProcessorLevel, and ProcessorRevision members to determine the type of processor. Windows Me/98/95: Specifies the type of processor in the system. This member is one of the following values: PROCESSOR_INTEL_386 PROCESSOR_INTEL_486 PROCESSOR_INTEL_PENTIUM
SystemInfoUnion Union for the OemId, ProcessorArchitecture, and Reserved fields of the SYSTEM_INFO structure. See Kernel.SYSTEM_INFO_UNION.

See Also

Kernel.SYSTEM_INFO Class | Tao.Platform.Windows Namespace | GetSystemInfo | Kernel.SYSTEM_INFO_UNION