structure NTFS_STATISTICS_EX (winioctl.h)
Contient des informations statistiques du système de fichiers NTFS. La prise en charge de cette structure a commencé avec Windows 10.
Syntaxe
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;
Membres
LogFileFullExceptions
Nombre d’exceptions générées en raison du fait que le fichier journal est plein.
OtherExceptions
Nombre d’autres exceptions générées.
MftReads
Nombre d’opérations de lecture sur la table de fichiers master (MFT).
MftReadBytes
Nombre d’octets lus à partir de MFT.
MftWrites
Nombre d’opérations d’écriture sur le MFT.
MftWriteBytes
Nombre d’octets écrits dans MFT.
MftWritesUserLevel
MftWritesUserLevel.Write
Nombre d’écritures MFT en raison d’une opération d’écriture.
MftWritesUserLevel.Create
Nombre d’écritures MFT en raison d’une opération de création.
MftWritesUserLevel.SetInfo
Nombre d’écritures MFT en raison de la définition des informations de fichier.
MftWritesUserLevel.Flush
Nombre d’écritures MFT en raison d’une opération de vidage.
MftWritesFlushForLogFileFull
Nombre de vidages de la MFT effectuées, car le fichier journal était plein.
MftWritesLazyWriter
Nombre d’opérations d’écriture MFT effectuées par le thread d’écriture paresseux.
MftWritesUserRequest
Réservé.
Mft2Writes
Nombre d’opérations d’écriture sur le miroir MFT.
Mft2WriteBytes
Nombre d’octets écrits dans le miroir MFT.
Mft2WritesUserLevel
Mft2WritesUserLevel.Write
Nombre d’écritures MFT miroir en raison d’une opération d’écriture.
Mft2WritesUserLevel.Create
Nombre d’écritures MFT miroir en raison d’une opération de création.
Mft2WritesUserLevel.SetInfo
Nombre d’écritures MFT miroir en raison de la définition des informations de fichier.
Mft2WritesUserLevel.Flush
Nombre d’écritures MFT miroir en raison d’une opération de vidage.
Mft2WritesFlushForLogFileFull
Le nombre de vidages du miroir effectué, car le fichier journal était plein.
Mft2WritesLazyWriter
Nombre d’opérations d’écriture MFT miroir effectuées par le thread d’écriture paresseux.
Mft2WritesUserRequest
Réservé.
RootIndexReads
Nombre d’opérations de lecture sur l’index racine.
RootIndexReadBytes
Nombre d’octets lus à partir de l’index racine.
RootIndexWrites
Nombre d’opérations d’écriture sur l’index racine.
RootIndexWriteBytes
Nombre d’octets écrits dans l’index racine.
BitmapReads
Nombre d’opérations de lecture sur la bitmap d’allocation de cluster.
BitmapReadBytes
Nombre d’octets lus à partir de la bitmap d’allocation de cluster.
BitmapWrites
Nombre d’opérations d’écriture sur la bitmap d’allocation de cluster.
BitmapWriteBytes
Nombre d’octets écrits dans la bitmap d’allocation de cluster.
BitmapWritesFlushForLogFileFull
Nombre de vidages de l’image bitmap effectuées, car le fichier journal était plein.
BitmapWritesLazyWriter
Nombre d’opérations d’écriture bitmap effectuées par le thread d’écriture paresseux.
BitmapWritesUserRequest
Réservé.
BitmapWritesUserLevel
BitmapWritesUserLevel.Write
Nombre d’écritures bitmap en raison d’une opération d’écriture.
BitmapWritesUserLevel.Create
Nombre d’écritures bitmap en raison d’une opération de création.
BitmapWritesUserLevel.SetInfo
Nombre d’écritures bitmap en raison de la définition des informations de fichier.
BitmapWritesUserLevel.Flush
Nombre d’écritures bitmap en raison d’une opération de vidage.
MftBitmapReads
Nombre d’opérations de lecture sur l’image bitmap MFT.
MftBitmapReadBytes
Nombre d’octets lus à partir de l’image bitmap MFT.
MftBitmapWrites
Nombre d’opérations d’écriture sur l’image bitmap MFT.
MftBitmapWriteBytes
Nombre d’octets écrits dans la bitmap MFT.
MftBitmapWritesFlushForLogFileFull
Nombre de vidages de l’image bitmap MFT effectuées, car le fichier journal était plein.
MftBitmapWritesLazyWriter
Nombre d’opérations d’écriture bitmap MFT effectuées par le thread de l’enregistreur paresseux.
MftBitmapWritesUserRequest
Réservé.
MftBitmapWritesUserLevel
MftBitmapWritesUserLevel.Write
Nombre d’écritures bitmap MFT en raison d’une opération d’écriture.
MftBitmapWritesUserLevel.Create
Nombre d’écritures bitmap en raison d’une opération de création.
MftBitmapWritesUserLevel.SetInfo
Nombre d’écritures bitmap en raison de la définition des informations de fichier.
MftBitmapWritesUserLevel.Flush
Nombre d’écritures bitmap en raison d’une opération de vidage.
UserIndexReads
Nombre d’opérations de lecture sur l’index utilisateur.
UserIndexReadBytes
Nombre d’octets lus à partir de l’index utilisateur.
UserIndexWrites
Nombre d’opérations d’écriture sur l’index utilisateur.
UserIndexWriteBytes
Nombre d’octets écrits dans l’index utilisateur.
LogFileReads
Nombre d’opérations de lecture sur le fichier journal.
LogFileReadBytes
Nombre d’octets lus à partir du fichier journal.
LogFileWrites
Nombre d’opérations d’écriture sur le fichier journal.
LogFileWriteBytes
Nombre d’octets écrits dans le fichier journal.
Allocate
Allocate.Calls
Nombre d’appels individuels pour allouer des clusters.
Allocate.RunsReturned
Nombre d’exécutions utilisées pour satisfaire toutes les demandes.
Allocate.Hints
Nombre de fois où un indicateur a été spécifié.
Allocate.HintsHonored
Nombre de fois où l’indicateur a été utile.
Allocate.Cache
Nombre de fois où le cache a été utile en dehors de l’indicateur.
Allocate.CacheMiss
Nombre de fois où le cache n’a pas été utile.
Allocate.Clusters
Nombre de clusters alloués.
Allocate.HintsClusters
Nombre de clusters alloués via l’indicateur.
Allocate.CacheClusters
Nombre de clusters alloués par le biais du cache autre que l’indicateur.
Allocate.CacheMissClusters
Nombre de clusters alloués sans le cache.
DiskResourcesExhausted
Nombre d’échecs de tentatives d’acquisition d’une dalle de stockage à utiliser sur le volume actuellement provisionné.
VolumeTrimCount
Nombre d’opérations de découpage au niveau du volume émises.
VolumeTrimTime
Temps total écoulé pendant toutes les opérations de découpage au niveau du volume. Cette valeur, divisée par la valeur de fréquence de QueryPerformanceFrequency ou KeQueryPerformanceCounter, donne le temps en secondes.
VolumeTrimByteCount
Nombre total d’octets émis par toutes les opérations de découpage au niveau du volume.
FileLevelTrimCount
Nombre d’opérations de découpage au niveau du fichier émises.
FileLevelTrimTime
Temps total écoulé pendant toutes les opérations de découpage au niveau du fichier. Cette valeur, divisée par la valeur de fréquence de QueryPerformanceFrequency ou KeQueryPerformanceCounter, donne le temps en secondes.
FileLevelTrimByteCount
Nombre total d’octets émis par toutes les opérations de découpage au niveau du fichier.
VolumeTrimSkippedCount
Nombre de fois où une opération de découpage au niveau du volume a été abandonnée avant d’être envoyée vers le bas via la pile de stockage.
VolumeTrimSkippedByteCount
Nombre d’octets qui n’ont pas été envoyés via une opération de découpage au niveau du volume, car ils ont été ignorés.
NtfsFillStatInfoFromMftRecordCalledCount
NtfsFillStatInfoFromMftRecordBailedBecauseOfAttributeListCount
NtfsFillStatInfoFromMftRecordBailedBecauseOfNonResReparsePointCount
Remarques
Les fichiers MFT, MFT miroir, index racine, index utilisateur, bitmap et bitmap MFT sont comptés en tant que fichiers de métadonnées. Le fichier journal n’est pas compté comme un fichier de métadonnées.
Le nombre d’opérations de lecture et d’écriture mesurées est le nombre d’opérations de pagination.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows 10 (applications de bureau uniquement) |
Serveur minimal pris en charge | Windows Server 2016 (applications de bureau uniquement) |
En-tête | winioctl.h (inclure Windows.h) |