DISK_PERFORMANCE 構造体 (ntdddisk.h)
DISK_PERFORMANCE構造は、ディスクのパフォーマンスを測定するために、ディスク統計の概要を収集するために 、IOCTL_DISK_PERFORMANCE 要求と組み合わせて使用されます。
構文
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;
メンバー
BytesRead
パフォーマンス カウンターが有効になった後にディスクから読み取られたバイトの累積数を格納します。
BytesWritten
パフォーマンス カウンターが有効になった後にディスクに書き込まれたバイトの累積数を格納します。
ReadTime
パフォーマンス カウンターが有効になった後にディスクの読み取りに費やされた累積時間を 100 ナノ秒単位で表します。
WriteTime
パフォーマンス カウンターが有効になった後にディスクの読み取りに費やされた累積時間を 100 ナノ秒単位で表します。
IdleTime
ディスク アクティビティがないパフォーマンス カウンターが有効になっていたため、累積時間を 100 ナノ秒単位で表します。
ReadCount
パフォーマンス カウンターが有効になった後の読み取りのディスク アクセスの数を格納します。
WriteCount
パフォーマンス カウンターが有効になった後の書き込みのディスク アクセスの数を格納します。
QueueDepth
パフォーマンス統計のクエリが実行された時点でキューに登録されたディスク I/O 要求の数のスナップショットが含まれます。
SplitCount
パフォーマンス カウンターが有効になった後の、関連付けられた IRP によるディスク アクセスの数を格納します。
QueryTime
クエリが実行された時点のシステム時刻を示すタイムスタンプが含まれます。 システム時間は、1601 年 1 月 1 日以降の 100 ナノ秒間隔のカウントです。 システム時間は通常、約 10 ミリ秒ごとに更新されます。 システム時刻の詳細については、「KeQuerySystemTime」を参照してください。
StorageDeviceNumber
特定のストレージの種類のすべてのディスクまたはボリュームに割り当てられた一意の番号が含まれます。 ストレージの種類は 、disk.sys、 ftdisk.sys、および dmio.sysです。
StorageManagerName[8]
パフォーマンス統計を提供したデバイス ドライバーを示す 8 文字の文字列が含まれます。
Windows 2000 では、ドライバーlogidisk.sysの場合は "LogiDisk"、ドライバー の場合 は "PhysDisk" physdisk.sys。 これらのドライバーは、それぞれデバイスと物理ディスクのパフォーマンス統計を収集します。
Windows XP 以降のオペレーティング システムでは、ドライバーftdisk.sysの場合は "FTDISK" 、ドライバー dmio.sysの場合は "DMIO" 、ドライバー の 場合は "PARTMGR" のいずれかの文字列 partmgr.sys。 これら 3 つのドライバーは、それぞれ、ベーシック ディスク ボリューム、ダイナミック ディスク ボリューム、物理ディスクのパフォーマンス統計を収集します。 これらの文字列は、空白の塗りつぶしを含む 8 文字の大文字と小文字を区別する文字列であることに注意してください。 たとえば、文字列 "FTDISK" の場合、 StorageManagerName 文字配列には 2 つの末尾の空白 ("FTDISK ") が含まれている必要があります。文字列 "DMIO" の場合、配列には 4 つの末尾の空白 ("DMIO") が含まれている必要があります。
注釈
パフォーマンス カウンターが無効になるとカウントは停止しますが、カウンターはリセットされないため、構造体メンバーに割り当てられた累積値は、カウンターの有効化と無効化の複数の間でディスク アクティビティを反映する可能性があります。
要件
要件 | 値 |
---|---|
Header | ntdddisk.h (Ntdddisk.h を含む) |