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) に対する読み取り操作の数。

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 (デスクトップ アプリのみ)
Header winioctl.h (Windows.h を含む)

こちらもご覧ください

FILESYSTEM_STATISTICS

KeQueryPerformanceCounter

NTFS_STATISTICS_EX

QueryPerformanceFrequency