DISK_PERFORMANCE-Struktur (ntdddisk.h)
Die DISK_PERFORMANCE-Struktur wird in Verbindung mit der IOCTL_DISK_PERFORMANCE-Anforderung verwendet, um zusammenfassende Datenträgerstatistiken zum Messen der Datenträgerleistung zu sammeln.
Syntax
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;
Member
BytesRead
Enthält eine kumulative Anzahl von Bytes, die vom Datenträger gelesen wurden, seit die Leistungsindikatoren aktiviert wurden.
BytesWritten
Enthält eine kumulative Anzahl von Bytes, die auf den Datenträger geschrieben wurden, seit die Leistungsindikatoren aktiviert wurden.
ReadTime
Enthält eine kumulative Zeit, ausgedrückt in Schritten von 100 Nanosekunden, die seit der Aktivierung der Leistungsindikatoren für Datenträgerlesevorgänge aufgewendet wurde.
WriteTime
Enthält eine kumulative Zeit, ausgedrückt in Schritten von 100 Nanosekunden, die seit der Aktivierung der Leistungsindikatoren für Datenträgerlesevorgänge aufgewendet wurde.
IdleTime
Enthält eine kumulative Zeit, ausgedrückt in Schritten von 100 Nanosekunden, da die Leistungsindikatoren aktiviert wurden, in denen keine Datenträgeraktivität aufgetreten ist.
ReadCount
Enthält die Anzahl der Datenträgerzugriffe für Lesevorgänge, seit die Leistungsindikatoren aktiviert wurden.
WriteCount
Enthält die Anzahl der Datenträgerzugriffe für Schreibvorgänge, seit die Leistungsindikatoren aktiviert wurden.
QueueDepth
Enthält eine Momentaufnahme der Anzahl der E/A-Anforderungen für Warteschlange zum Zeitpunkt der Abfrage für Leistungsstatistiken.
SplitCount
Enthält die Anzahl der Datenträgerzugriffe mithilfe eines zugeordneten IRP, seit die Leistungsindikatoren aktiviert wurden.
QueryTime
Enthält einen Zeitstempel, der die Systemzeit zum Zeitpunkt der Abfrage angibt. Die Systemzeit beträgt seit dem 1. Januar 1601 Intervalle von 100 Nanosekunden. Die Systemzeit wird in der Regel etwa alle zehn Millisekunden aktualisiert. Weitere Informationen zur Systemzeit finden Sie unterKeQuerySystemTime.
StorageDeviceNumber
Enthält eine eindeutige Nummer, die jedem Datenträger oder Volume für einen bestimmten Speichertyp zugewiesen ist. Die Speichertypen sind disk.sys, ftdisk.sysund dmio.sys.
StorageManagerName[8]
Enthält eine 8-stellige Zeichenfolge, die angibt, welcher Gerätetreiber die Leistungsstatistiken bereitgestellt hat.
In Windows 2000 kann dies entweder "LogiDisk" für den Treiber logidisk.sys oder "PhysDisk" für den Treiber physdisk.syssein. Diese Treiber sammeln Leistungsstatistiken für Geräte bzw. physische Datenträger.
In Windows XP und höheren Betriebssystemen kann dies eine der folgenden drei Zeichenfolgen sein: "FTDISK" für den Treiber ftdisk.sys, "DMIO" für den Treiber dmio.sysoder "PARTMGR" für den Treiber partmgr.sys. Diese drei Treiber sammeln Leistungsstatistiken für grundlegende Datenträgervolumes, dynamische Datenträgervolumes und physische Datenträger. Beachten Sie, dass es sich bei diesen Zeichenfolgen um 8-stellige Zeichenfolgen mit leerer Füllung handelt. Im Fall der Zeichenfolge "FTDISK" sollte das StorageManagerName-Zeichenarray beispielsweise zwei nachfolgende Leerzeichen ("FTDISK") enthalten, und im Fall der Zeichenfolge "DMIO" sollte das Array vier nachfolgende Leerzeichen ("DMIO") enthalten.
Hinweise
Die Zählung wird beendet, wenn die Leistungsindikatoren deaktiviert sind, aber die Leistungsindikatoren nicht zurückgesetzt werden, sodass die kumulativen Werte, die den Strukturelementen zugewiesen sind, möglicherweise die Datenträgeraktivität über mehrere Aktivierungen und Deaktivierungen der Leistungsindikatoren widerspiegeln.
Anforderungen
Anforderung | Wert |
---|---|
Header | ntdddisk.h (include Ntdddisk.h) |