PERF_DATA_BLOCK 구조체(winperf.h)

쿼리한 성능 데이터 블록(예: 공급자가 반환한 성능 개체 수 및 성능 값을 계산할 때 사용하는 시간 기반 값)을 설명합니다.

구문

typedef struct _PERF_DATA_BLOCK {
  WCHAR         Signature[4];
  DWORD         LittleEndian;
  DWORD         Version;
  DWORD         Revision;
  DWORD         TotalByteLength;
  DWORD         HeaderLength;
  DWORD         NumObjectTypes;
  LONG          DefaultObject;
  SYSTEMTIME    SystemTime;
  LARGE_INTEGER PerfTime;
  LARGE_INTEGER PerfFreq;
  LARGE_INTEGER PerfTime100nSec;
  DWORD         SystemNameLength;
  DWORD         SystemNameOffset;
} PERF_DATA_BLOCK, *PPERF_DATA_BLOCK;

멤버

Signature[4]

"PERF"를 포함하는 4개의 와이드 문자 배열입니다.

LittleEndian

카운터 값이 big endian 형식인지 또는 little endian 형식인지를 나타냅니다. 하나이면 카운터 값이 little endian 형식입니다. 0이면 카운터 값이 big endian 형식입니다. UNIX 컴퓨터와 같은 외대 컴퓨터에서 성능 데이터를 검색하는 경우 이 값은 0(빅 엔디안 형식)일 수 있습니다.

Version

성능 구조의 버전입니다.

Revision

성능 구조의 수정 버전입니다.

TotalByteLength

성능 데이터 블록의 총 크기(바이트)입니다.

HeaderLength

이 구조체의 크기(바이트)입니다. 헤더 길이를 사용하여 성능 데이터 블록에서 첫 번째 PERF_OBJECT_TYPE 구조를 찾습니다.

NumObjectTypes

성능 데이터 블록의 성능 개체 수입니다.

DefaultObject

예약되어 있습니다.

SystemTime

시스템을 모니터링한 시간입니다. 이 멤버는 UTC(협정 세계시) 형식입니다.

PerfTime

모니터링되는 시스템의 성능 카운터 값(개수)입니다. 자세한 내용은 QueryPerformanceCounter를 참조하세요.

PerfFreq

모니터링되는 시스템의 성능 카운터 빈도(초당 수)입니다. 자세한 내용은 QueryPerformanceFrequency를 참조하세요.

PerfTime100nSec

모니터링되는 시스템의 성능 카운터 값(100나노초 단위)입니다. 자세한 내용은 GetSystemTimeAsFileTime을 참조하세요.

SystemNameLength

SystemNameOffset에 있는 컴퓨터 이름의 크기(바이트)입니다.

SystemNameOffset

이 구조체의 시작 부분에서 모니터링 중인 컴퓨터의 유니코드 이름으로 오프셋합니다.

설명

성능 데이터 블록은 소비자가 RegQueryValueEx 를 호출하여 하나 이상의 성능 개체를 검색할 때 반환됩니다. 이 구조체는 반환된 블록의 첫 번째 구조체입니다. 블록의 다음 구조체는 성능 개체를 정의하는 PERF_OBJECT_TYPE 구조체입니다. 성능 데이터 블록의 레이아웃에 대한 자세한 내용은 성능 데이터 형식을 참조하세요.

소비자는 카운터 형식에 PERF_OBJECT_TIMER 플래그가 포함되지 않는 한 카운터 값을 계산할 때 PerfTime, PerfFreqPerfTime100nSec을 사용합니다. 이 경우 소비자는 PERF_OBJECT_TYPEPerfTimePerfFreq 멤버를 사용합니다.

요구 사항

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

추가 정보

PERF_OBJECT_TYPE

성능 데이터 형식