다음을 통해 공유


NTFS_STATISTICS_EX 구조체(winioctl.h)

NTFS 파일 시스템의 통계 정보를 포함합니다. 이 구조체에 대한 지원은 Windows 10 시작했습니다.

구문

typedef struct _NTFS_STATISTICS_EX {
  DWORD     LogFileFullExceptions;
  DWORD     OtherExceptions;
  DWORDLONG MftReads;
  DWORDLONG MftReadBytes;
  DWORDLONG MftWrites;
  DWORDLONG MftWriteBytes;
  struct {
    DWORD Write;
    DWORD Create;
    DWORD SetInfo;
    DWORD Flush;
  } MftWritesUserLevel;
  DWORD     MftWritesFlushForLogFileFull;
  DWORD     MftWritesLazyWriter;
  DWORD     MftWritesUserRequest;
  DWORDLONG Mft2Writes;
  DWORDLONG Mft2WriteBytes;
  struct {
    DWORD Write;
    DWORD Create;
    DWORD SetInfo;
    DWORD Flush;
  } Mft2WritesUserLevel;
  DWORD     Mft2WritesFlushForLogFileFull;
  DWORD     Mft2WritesLazyWriter;
  DWORD     Mft2WritesUserRequest;
  DWORDLONG RootIndexReads;
  DWORDLONG RootIndexReadBytes;
  DWORDLONG RootIndexWrites;
  DWORDLONG RootIndexWriteBytes;
  DWORDLONG BitmapReads;
  DWORDLONG BitmapReadBytes;
  DWORDLONG BitmapWrites;
  DWORDLONG BitmapWriteBytes;
  DWORD     BitmapWritesFlushForLogFileFull;
  DWORD     BitmapWritesLazyWriter;
  DWORD     BitmapWritesUserRequest;
  struct {
    DWORD Write;
    DWORD Create;
    DWORD SetInfo;
    DWORD Flush;
  } BitmapWritesUserLevel;
  DWORDLONG MftBitmapReads;
  DWORDLONG MftBitmapReadBytes;
  DWORDLONG MftBitmapWrites;
  DWORDLONG MftBitmapWriteBytes;
  DWORD     MftBitmapWritesFlushForLogFileFull;
  DWORD     MftBitmapWritesLazyWriter;
  DWORD     MftBitmapWritesUserRequest;
  struct {
    DWORD Write;
    DWORD Create;
    DWORD SetInfo;
    DWORD Flush;
  } MftBitmapWritesUserLevel;
  DWORDLONG UserIndexReads;
  DWORDLONG UserIndexReadBytes;
  DWORDLONG UserIndexWrites;
  DWORDLONG UserIndexWriteBytes;
  DWORDLONG LogFileReads;
  DWORDLONG LogFileReadBytes;
  DWORDLONG LogFileWrites;
  DWORDLONG LogFileWriteBytes;
  struct {
    DWORD     Calls;
    DWORD     RunsReturned;
    DWORD     Hints;
    DWORD     HintsHonored;
    DWORD     Cache;
    DWORD     CacheMiss;
    DWORDLONG Clusters;
    DWORDLONG HintsClusters;
    DWORDLONG CacheClusters;
    DWORDLONG CacheMissClusters;
  } Allocate;
  DWORD     DiskResourcesExhausted;
  DWORDLONG VolumeTrimCount;
  DWORDLONG VolumeTrimTime;
  DWORDLONG VolumeTrimByteCount;
  DWORDLONG FileLevelTrimCount;
  DWORDLONG FileLevelTrimTime;
  DWORDLONG FileLevelTrimByteCount;
  DWORDLONG VolumeTrimSkippedCount;
  DWORDLONG VolumeTrimSkippedByteCount;
  DWORDLONG NtfsFillStatInfoFromMftRecordCalledCount;
  DWORDLONG NtfsFillStatInfoFromMftRecordBailedBecauseOfAttributeListCount;
  DWORDLONG NtfsFillStatInfoFromMftRecordBailedBecauseOfNonResReparsePointCount;
} NTFS_STATISTICS_EX, *PNTFS_STATISTICS_EX;

멤버

LogFileFullExceptions

로그 파일이 가득 차서 생성된 예외 수입니다.

OtherExceptions

생성된 다른 예외의 수입니다.

MftReads

master 파일 테이블(MFT)의 읽기 작업 수입니다.

MftReadBytes

MFT에서 읽은 바이트 수입니다.

MftWrites

MFT의 쓰기 작업 수입니다.

MftWriteBytes

MFT에 기록된 바이트 수입니다.

MftWritesUserLevel

MftWritesUserLevel.Write

쓰기 작업으로 인한 MFT 쓰기 수입니다.

MftWritesUserLevel.Create

만들기 작업으로 인한 MFT 쓰기 수입니다.

MftWritesUserLevel.SetInfo

파일 정보 설정으로 인한 MFT 쓰기 수입니다.

MftWritesUserLevel.Flush

플러시 작업으로 인한 MFT 쓰기 수입니다.

MftWritesFlushForLogFileFull

로그 파일이 가득 찼기 때문에 수행된 MFT의 플러시 수입니다.

MftWritesLazyWriter

지연 기록기 스레드에서 수행하는 MFT 쓰기 작업의 수입니다.

MftWritesUserRequest

예약되어 있습니다.

Mft2Writes

MFT 미러 쓰기 작업 수입니다.

Mft2WriteBytes

MFT 미러 기록된 바이트 수입니다.

Mft2WritesUserLevel

Mft2WritesUserLevel.Write

쓰기 작업으로 인한 MFT 미러 쓰기 수입니다.

Mft2WritesUserLevel.Create

만들기 작업으로 인한 MFT 미러 쓰기 수입니다.

Mft2WritesUserLevel.SetInfo

파일 정보 설정으로 인한 MFT 미러 쓰기 수입니다.

Mft2WritesUserLevel.Flush

플러시 작업으로 인한 MFT 미러 쓰기 수입니다.

Mft2WritesFlushForLogFileFull

로그 파일이 가득 찼기 때문에 수행된 MFT 미러 플러시 수입니다.

Mft2WritesLazyWriter

지연 기록기 스레드에서 수행하는 MFT 미러 쓰기 작업의 수입니다.

Mft2WritesUserRequest

예약되어 있습니다.

RootIndexReads

루트 인덱스에 대한 읽기 작업의 수입니다.

RootIndexReadBytes

루트 인덱스에서 읽은 바이트 수입니다.

RootIndexWrites

루트 인덱스에 대한 쓰기 작업 수입니다.

RootIndexWriteBytes

루트 인덱스로 작성된 바이트 수입니다.

BitmapReads

클러스터 할당 비트맵에 대한 읽기 작업 수입니다.

BitmapReadBytes

클러스터 할당 비트맵에서 읽은 바이트 수입니다.

BitmapWrites

클러스터 할당 비트맵에 대한 쓰기 작업 수입니다.

BitmapWriteBytes

클러스터 할당 비트맵에 기록된 바이트 수입니다.

BitmapWritesFlushForLogFileFull

로그 파일이 가득 찼기 때문에 수행된 비트맵의 플러시 수입니다.

BitmapWritesLazyWriter

지연 기록기 스레드에서 수행하는 비트맵 쓰기 작업의 수입니다.

BitmapWritesUserRequest

예약되어 있습니다.

BitmapWritesUserLevel

BitmapWritesUserLevel.Write

쓰기 작업으로 인한 비트맵 쓰기 수입니다.

BitmapWritesUserLevel.Create

만들기 작업으로 인한 비트맵 쓰기 수입니다.

BitmapWritesUserLevel.SetInfo

파일 정보 설정으로 인한 비트맵 쓰기 수입니다.

BitmapWritesUserLevel.Flush

플러시 작업으로 인한 비트맵 쓰기 수입니다.

MftBitmapReads

MFT 비트맵의 읽기 작업 수입니다.

MftBitmapReadBytes

MFT 비트맵에서 읽은 바이트 수입니다.

MftBitmapWrites

MFT 비트맵의 쓰기 작업 수입니다.

MftBitmapWriteBytes

MFT 비트맵에 기록된 바이트 수입니다.

MftBitmapWritesFlushForLogFileFull

로그 파일이 가득 찼기 때문에 수행된 MFT 비트맵의 플러시 수입니다.

MftBitmapWritesLazyWriter

지연 작성기 스레드에서 수행하는 MFT 비트맵 쓰기 작업의 수입니다.

MftBitmapWritesUserRequest

예약되어 있습니다.

MftBitmapWritesUserLevel

MftBitmapWritesUserLevel.Write

쓰기 작업으로 인한 MFT 비트맵 쓰기 수입니다.

MftBitmapWritesUserLevel.Create

만들기 작업으로 인한 비트맵 쓰기 수입니다.

MftBitmapWritesUserLevel.SetInfo

파일 정보 설정으로 인한 비트맵 쓰기 수입니다.

MftBitmapWritesUserLevel.Flush

플러시 작업으로 인한 비트맵 쓰기 수입니다.

UserIndexReads

사용자 인덱스에 대한 읽기 작업 수입니다.

UserIndexReadBytes

사용자 인덱스에서 읽은 바이트 수입니다.

UserIndexWrites

사용자 인덱스에 대한 쓰기 작업 수입니다.

UserIndexWriteBytes

사용자 인덱스로 작성된 바이트 수입니다.

LogFileReads

로그 파일의 읽기 작업 수입니다.

LogFileReadBytes

로그 파일에서 읽은 바이트 수입니다.

LogFileWrites

로그 파일에 대한 쓰기 작업 수입니다.

LogFileWriteBytes

로그 파일에 기록된 바이트 수입니다.

Allocate

Allocate.Calls

클러스터를 할당하기 위한 개별 호출 수입니다.

Allocate.RunsReturned

모든 요청을 충족하는 데 사용되는 실행 수입니다.

Allocate.Hints

힌트를 지정한 횟수입니다.

Allocate.HintsHonored

힌트가 유용한 횟수입니다.

Allocate.Cache

캐시가 힌트 이외의 유용한 횟수입니다.

Allocate.CacheMiss

캐시가 유용하지 않은 횟수입니다.

Allocate.Clusters

할당된 클러스터 수입니다.

Allocate.HintsClusters

힌트를 통해 할당된 클러스터 수입니다.

Allocate.CacheClusters

힌트 이외의 캐시를 통해 할당된 클러스터 수입니다.

Allocate.CacheMissClusters

캐시 없이 할당된 클러스터 수입니다.

DiskResourcesExhausted

현재 씬 프로비전된 볼륨에서 사용할 스토리지 슬래브를 획득하지 못한 횟수입니다.

VolumeTrimCount

발급된 볼륨 수준 트리밍 작업의 수입니다.

VolumeTrimTime

모든 볼륨 수준 트리밍 작업 중에 경과된 총 시간입니다. 이 값은 QueryPerformanceFrequency 또는 KeQueryPerformanceCounter의 빈도 값으로 나뉘어 시간(초)을 제공합니다.

VolumeTrimByteCount

모든 볼륨 수준 트리밍 작업에서 발급된 총 바이트 수입니다.

FileLevelTrimCount

발급된 파일 수준 트리밍 작업의 수입니다.

FileLevelTrimTime

모든 파일 수준 트리밍 작업 중에 경과된 총 시간입니다. 이 값은 QueryPerformanceFrequency 또는 KeQueryPerformanceCounter의 빈도 값으로 나뉘어 시간(초)을 제공합니다.

FileLevelTrimByteCount

모든 파일 수준 트리밍 작업에서 발급된 총 바이트 수입니다.

VolumeTrimSkippedCount

스토리지 스택을 통해 전송되기 전에 볼륨 수준 트리밍 작업이 중단된 횟수입니다.

VolumeTrimSkippedByteCount

건너뛰기 때문에 볼륨 수준 트리밍 작업을 통해 전송되지 않은 바이트 수입니다.

NtfsFillStatInfoFromMftRecordCalledCount

NtfsFillStatInfoFromMftRecordBailedBecauseOfAttributeListCount

NtfsFillStatInfoFromMftRecordBailedBecauseOfNonResReparsePointCount

설명

MFT, MFT 미러, 루트 인덱스, 사용자 인덱스, 비트맵 및 MFT 비트맵은 메타데이터 파일로 계산됩니다. 로그 파일은 메타데이터 파일로 계산되지 않습니다.

측정된 읽기 및 쓰기 작업의 수는 페이징 작업의 수입니다.

요구 사항

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

추가 정보

FILESYSTEM_STATISTICS

KeQueryPerformanceCounter

QueryPerformanceFrequency