Поделиться через


структура 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