다음을 통해 공유


NTFS_STATISTICS 구조체(winioctl.h)

NTFS 파일 시스템의 통계 정보를 포함합니다.

Windows 10 대상으로 하는 애플리케이션은 NTFS_STATISTICS_EX 통해 추가 통계에 액세스할 수 있습니다.
 

구문

typedef struct _NTFS_STATISTICS {
  DWORD  LogFileFullExceptions;
  DWORD  OtherExceptions;
  DWORD  MftReads;
  DWORD  MftReadBytes;
  DWORD  MftWrites;
  DWORD  MftWriteBytes;
  struct {
    WORD Write;
    WORD Create;
    WORD SetInfo;
    WORD Flush;
  } MftWritesUserLevel;
  WORD   MftWritesFlushForLogFileFull;
  WORD   MftWritesLazyWriter;
  WORD   MftWritesUserRequest;
  DWORD  Mft2Writes;
  DWORD  Mft2WriteBytes;
  struct {
    WORD Write;
    WORD Create;
    WORD SetInfo;
    WORD Flush;
  } Mft2WritesUserLevel;
  WORD   Mft2WritesFlushForLogFileFull;
  WORD   Mft2WritesLazyWriter;
  WORD   Mft2WritesUserRequest;
  DWORD  RootIndexReads;
  DWORD  RootIndexReadBytes;
  DWORD  RootIndexWrites;
  DWORD  RootIndexWriteBytes;
  DWORD  BitmapReads;
  DWORD  BitmapReadBytes;
  DWORD  BitmapWrites;
  DWORD  BitmapWriteBytes;
  WORD   BitmapWritesFlushForLogFileFull;
  WORD   BitmapWritesLazyWriter;
  WORD   BitmapWritesUserRequest;
  struct {
    WORD Write;
    WORD Create;
    WORD SetInfo;
  } BitmapWritesUserLevel;
  DWORD  MftBitmapReads;
  DWORD  MftBitmapReadBytes;
  DWORD  MftBitmapWrites;
  DWORD  MftBitmapWriteBytes;
  WORD   MftBitmapWritesFlushForLogFileFull;
  WORD   MftBitmapWritesLazyWriter;
  WORD   MftBitmapWritesUserRequest;
  struct {
    WORD Write;
    WORD Create;
    WORD SetInfo;
    WORD Flush;
  } MftBitmapWritesUserLevel;
  DWORD  UserIndexReads;
  DWORD  UserIndexReadBytes;
  DWORD  UserIndexWrites;
  DWORD  UserIndexWriteBytes;
  DWORD  LogFileReads;
  DWORD  LogFileReadBytes;
  DWORD  LogFileWrites;
  DWORD  LogFileWriteBytes;
  struct {
    DWORD Calls;
    DWORD Clusters;
    DWORD Hints;
    DWORD RunsReturned;
    DWORD HintsHonored;
    DWORD HintsClusters;
    DWORD Cache;
    DWORD CacheClusters;
    DWORD CacheMiss;
    DWORD CacheMissClusters;
  } Allocate;
  DWORD  DiskResourcesExhausted;
} NTFS_STATISTICS, *PNTFS_STATISTICS;

멤버

LogFileFullExceptions

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

OtherExceptions

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

MftReads

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

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

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

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.Clusters

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

Allocate.Hints

힌트가 지정된 횟수입니다.

Allocate.RunsReturned

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

Allocate.HintsHonored

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

Allocate.HintsClusters

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

Allocate.Cache

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

Allocate.CacheClusters

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

Allocate.CacheMiss

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

Allocate.CacheMissClusters

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

DiskResourcesExhausted

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

이 멤버에 대한 지원은 Windows 8.1 시작했습니다.

설명

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

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

Windows 10만 사용할 수 있는 추가 통계의 경우 NTFS_STATISTICS_EX 사용합니다.

요구 사항

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

추가 정보

FILESYSTEM_STATISTICS

KeQueryPerformanceCounter

NTFS_STATISTICS_EX

QueryPerformanceFrequency