SYSTEM_LOGICAL_PROCESSOR_INFORMATION 구조체(winnt.h)

지정된 프로세서 집합 간의 관계를 설명합니다. 이 구조체는 GetLogicalProcessorInformation 함수와 함께 사용됩니다.

구문

typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION {
  ULONG_PTR                      ProcessorMask;
  LOGICAL_PROCESSOR_RELATIONSHIP Relationship;
  union {
    struct {
      BYTE Flags;
    } ProcessorCore;
    struct {
      DWORD NodeNumber;
    } NumaNode;
    CACHE_DESCRIPTOR Cache;
    ULONGLONG        Reserved[2];
  } DUMMYUNIONNAME;
} SYSTEM_LOGICAL_PROCESSOR_INFORMATION, *PSYSTEM_LOGICAL_PROCESSOR_INFORMATION;

멤버

ProcessorMask

이 구조에서 설명하는 프로세서를 식별하는 프로세서 마스크입니다. 프로세서 마스크는 각 집합 비트가 관계의 활성 프로세서를 나타내는 비트 벡터입니다. 하나 이상의 비트가 설정됩니다.

프로세서가 64개 이상인 시스템에서 프로세서 마스크는 단일 프로세서 그룹의 프로세서를 식별합니다.

Relationship

ProcessorMask 멤버의 값으로 식별되는 프로세서 간의 관계입니다. 이 멤버는 다음 LOGICAL_PROCESSOR_RELATIONSHIP 값 중 하나일 수 있습니다.

의미
RelationCache
2
지정된 논리 프로세서는 캐시를 공유합니다. 캐시 멤버에는 추가 정보가 포함됩니다.

Windows Server 2003: 이 값은 WINDOWS Server 2003 SP1 및 Windows XP Professional x64 Edition까지 지원되지 않습니다.

RelationNumaNode
1
지정된 논리 프로세서는 동일한 NUMA 노드의 일부입니다. NumaNode 멤버에는 추가 정보가 포함됩니다.
RelationProcessorCore
0
지정된 논리 프로세서는 단일 프로세서 코어를 공유합니다. ProcessorCore 멤버에는 추가 정보가 포함됩니다.
RelationProcessorPackage
3
지정된 논리 프로세서는 실제 패키지를 공유합니다. 사용 가능한 추가 정보는 없습니다.

Windows Server 2003 및 Windows XP Professional x64 Edition: 이 값은 SP1이 있는 Windows Server 2003 및 WINDOWS XP SP3까지 지원되지 않습니다.

 

이후 버전의 Windows는 Relationship 멤버에 대한 추가 값을 지원할 수 있습니다.

DUMMYUNIONNAME

DUMMYUNIONNAME.ProcessorCore

이 구조체는 Relationship 멤버가 RelationProcessorCore인 경우에만 유효한 데이터를 포함합니다.

DUMMYUNIONNAME.ProcessorCore.Flags

이 멤버의 값이 1이면 Hyperthreading 또는 SMT와 같이 ProcessorMask 멤버의 값으로 식별된 논리 프로세서가 기능 단위를 공유합니다. 그렇지 않으면 식별된 논리 프로세서가 기능 단위를 공유하지 않습니다.

Windows Server 2003 및 Windows XP Professional x64 Edition: 또한 이 멤버는 실제 패키지를 공유하는 코어의 경우 1입니다. 따라서 프로세서가 Windows Vista 이전의 시스템에서 여러 코어 또는 하이퍼스레딩을 지원하는지 확인하려면 CPUID 명령을 사용합니다.

DUMMYUNIONNAME.NumaNode

이 구조체는 Relationship 멤버가 RelationNumaNode인 경우에만 유효한 데이터를 포함합니다.

DUMMYUNIONNAME.NumaNode.NodeNumber

NUMA 노드를 식별합니다. 이 매개 변수의 유효한 값은 0에서 가장 높은 NUMA 노드 번호(포함)입니다. 비 NUMA 다중 프로세서 시스템은 모든 프로세서가 하나의 NUMA 노드에 속한다고 보고합니다.

DUMMYUNIONNAME.Cache

특정 캐시의 특성을 식별하는 CACHE_DESCRIPTOR 구조체입니다. 보고된 각 캐시에 대해 하나의 레코드가 반환됩니다. 프로세서가 캐시를 식별하는 데 사용하는 메커니즘에 따라 일부 또는 모든 캐시를 보고하지 않을 수 있습니다. 따라서 특정 캐시가 없다고 가정하지 마세요. 캐시가 논리 프로세서 간에 반드시 공유되는 것은 아닙니다.

이 구조체에는 Relationship 멤버가 RelationCache인 경우에만 유효한 데이터가 포함됩니다.

Windows Server 2003: 이 멤버는 WINDOWS Server 2003 SP1 및 Windows XP Professional x64 Edition까지 지원되지 않습니다.

DUMMYUNIONNAME.Reserved[2]

예약되어 있습니다. 사용하지 마십시오.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista, Windows XP Professional x64 Edition [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
머리글 winnt.h(Windows.h 포함)

추가 정보

CACHE_DESCRIPTOR

GetLogicalProcessorInformation

GetLogicalProcessorInformationEx

LOGICAL_PROCESSOR_RELATIONSHIP

SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX