DISK_PERFORMANCE structure (ntdddisk.h)
La structure DISK_PERFORMANCE est utilisée conjointement avec la demande IOCTL_DISK_PERFORMANCE pour collecter des statistiques de disque récapitulatives afin de mesurer les performances du disque.
Syntaxe
typedef struct _DISK_PERFORMANCE {
LARGE_INTEGER BytesRead;
LARGE_INTEGER BytesWritten;
LARGE_INTEGER ReadTime;
LARGE_INTEGER WriteTime;
LARGE_INTEGER IdleTime;
ULONG ReadCount;
ULONG WriteCount;
ULONG QueueDepth;
ULONG SplitCount;
LARGE_INTEGER QueryTime;
ULONG StorageDeviceNumber;
WCHAR StorageManagerName[8];
} DISK_PERFORMANCE, *PDISK_PERFORMANCE;
Membres
BytesRead
Contient un nombre cumulé d’octets lus à partir du disque depuis que les compteurs de performances ont été activés.
BytesWritten
Contient un nombre cumulé d’octets écrits sur le disque depuis que les compteurs de performances ont été activés.
ReadTime
Contient un temps cumulé, exprimé par incréments de 100 nanosecondes, passé sur les lectures sur disque depuis que les compteurs de performances ont été activés.
WriteTime
Contient un temps cumulé, exprimé par incréments de 100 nanosecondes, passé sur les lectures sur disque depuis que les compteurs de performances ont été activés.
IdleTime
Contient un temps cumulé, exprimé par incréments de 100 nanosecondes, puisque les compteurs de performances ont été activés dans lesquels il n’y avait aucune activité sur disque.
ReadCount
Contient le nombre d’accès au disque pour les lectures depuis que les compteurs de performances ont été activés.
WriteCount
Contient le nombre d’accès au disque pour les écritures depuis que les compteurs de performances ont été activés.
QueueDepth
Contient une instantané du nombre de demandes d’E/S de disque en file d’attente au moment où la requête pour les statistiques de performances a été effectuée.
SplitCount
Contient le nombre d’accès au disque au moyen d’un IRP associé depuis que les compteurs de performances ont été activés.
QueryTime
Contient un horodatage indiquant l’heure système au moment où la requête a eu lieu. L’heure système est un nombre d’intervalles de 100 nanosecondes depuis le 1er janvier 1601. L’heure système est généralement mise à jour environ toutes les dix millisecondes. Pour plus d’informations sur l’heure système, consultezKeQuerySystemTime.
StorageDeviceNumber
Contient un numéro unique attribué à chaque disque ou volume sur un type de stockage particulier. Les types de stockage sont disk.sys, ftdisk.syset dmio.sys.
StorageManagerName[8]
Contient une chaîne de 8 caractères qui indique quel pilote de périphérique a fourni les statistiques de performances.
Dans Windows 2000, il peut s’agir de « LogiDisk » pour le pilotelogidisk.sys ou de « PhysDisk » pour le pilote physdisk.sys. Ces pilotes collectent des statistiques de performances pour les appareils et les disques physiques respectivement.
Dans Windows XP et les systèmes d’exploitation ultérieurs, il peut s’agir de l’une des trois chaînes suivantes : « FTDISK » pour le pilote ftdisk.sys, « DMIO » pour le pilotedmio.sysou « PARTMGR » pour le pilote partmgr.sys. Ces trois pilotes collectent des statistiques de performances pour les volumes de disque de base, les volumes de disques dynamiques et les disques physiques, respectivement. Notez que ces chaînes sont des chaînes de 8 caractères respectant la casse avec un remplissage vide. Par exemple, dans le cas de la chaîne « FTDISK », le tableau de caractères StorageManagerName doit contenir deux espaces de fin (« FTDISK »), et dans le cas de la chaîne « DMIO », le tableau doit contenir quatre espaces de fin (« DMIO »).
Remarques
Le comptage s’arrête chaque fois que les compteurs de performances sont désactivés, mais que les compteurs ne sont pas réinitialisés, de sorte que les valeurs cumulatives affectées aux membres de la structure peuvent potentiellement refléter l’activité du disque sur plusieurs activations et désactivations des compteurs.
Configuration requise
Condition requise | Valeur |
---|---|
En-tête | ntdddisk.h (incluez Ntdddisk.h) |