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


структура FILESYSTEM_STATISTICS (winioctl.h)

Содержит статистические сведения из файловой системы.

Совет Приложения, предназначенные для Windows 10, могут получать доступ к дополнительной статистике через FILESYSTEM_STATISTICS_EX.
 

Синтаксис

typedef struct _FILESYSTEM_STATISTICS {
  WORD  FileSystemType;
  WORD  Version;
  DWORD SizeOfCompleteStructure;
  DWORD UserFileReads;
  DWORD UserFileReadBytes;
  DWORD UserDiskReads;
  DWORD UserFileWrites;
  DWORD UserFileWriteBytes;
  DWORD UserDiskWrites;
  DWORD MetaDataReads;
  DWORD MetaDataReadBytes;
  DWORD MetaDataDiskReads;
  DWORD MetaDataWrites;
  DWORD MetaDataWriteBytes;
  DWORD MetaDataDiskWrites;
} FILESYSTEM_STATISTICS, *PFILESYSTEM_STATISTICS;

Члены

FileSystemType

Тип файловой системы.

Этот элемент может быть одним из следующих значений.

Значение Значение
FILESYSTEM_STATISTICS_TYPE_EXFAT
3
Файловая система является файловой системой exFAT.

Если это значение задано, за этой структурой следует EXFAT_STATISTICS структура.

Windows Vista, Windows Server 2003 и Windows XP: Это значение не поддерживается до windows Vista с пакетом обновления 1 (SP1).

FILESYSTEM_STATISTICS_TYPE_FAT
2
Файловая система является файловой системой FAT.

Если это значение задано, за этой структурой следует FAT_STATISTICS структура.

FILESYSTEM_STATISTICS_TYPE_NTFS
1
Файловая система — файловая система NTFS.

Если это значение задано, за этой структурой следует NTFS_STATISTICS структура.

Version

Для этого элемента задано значение 1 (один).

SizeOfCompleteStructure

Размер этой структуры плюс размер структуры файловой системы, следующей за этой структурой, умноженный на количество процессоров.

Это значение должно быть кратным 64. Например, если размер FILESYSTEM_STATISTICS 0x38, размер NTFS_STATISTICS 0xD8, а при наличии двух процессоров выделенный буфер должен быть 0x280.

sizeof(FILESYSTEM_STATISTICS) = 0x38

sizeof(NTFS_STATISTICS) = 0xD8

Общий размер = 0x110

размер всей структуры = 0x140 (то есть выровненная длина, кратная 64).

умножено на 2 (число процессоров) = 0x280

UserFileReads

Количество операций чтения с пользовательскими файлами.

UserFileReadBytes

Число байтов, считанных из пользовательских файлов.

UserDiskReads

Количество операций чтения с пользовательскими файлами.

Это значение включает операции вложенного чтения.

UserFileWrites

Количество операций записи в пользовательских файлах.

UserFileWriteBytes

Число байтов, записанных в пользовательские файлы.

UserDiskWrites

Количество операций записи в пользовательских файлах.

Это значение включает вложенные операции записи.

MetaDataReads

Количество операций чтения с файлами метаданных.

MetaDataReadBytes

Число байтов, считанных из файлов метаданных.

MetaDataDiskReads

Количество операций чтения с файлами метаданных.

Это значение включает операции вложенного чтения.

MetaDataWrites

Количество операций записи в файлах метаданных.

MetaDataWriteBytes

Число байтов, записанных в файлы метаданных.

MetaDataDiskWrites

Количество операций записи в файлах метаданных.

Это значение включает вложенные операции записи.

Комментарии

Существует два типа файлов: пользовательские и метаданные. Пользовательские файлы доступны для пользователя. Файлы метаданных — это системные файлы, содержащие сведения, которые файловая система использует для своей внутренней организации.

Количество операций чтения и записи определяется количеством операций разбиения по страницам.

Требования

Требование Значение
Минимальная версия клиента Windows XP [только классические приложения]
Минимальная версия сервера Windows Server 2003 [только классические приложения]
Верхняя часть winioctl.h (включая Windows.h)

См. также раздел

EXFAT_STATISTICS

FAT_STATISTICS

FSCTL_FILESYSTEM_GET_STATISTICS

NTFS_STATISTICS