JOBOBJECT_IO_RATE_CONTROL_INFORMATION構造体 (jobapi2.h)
ジョブの I/O レートを制御するために使用される情報が含まれます。 この構造体は、 SetIoRateControlInformationJobObject 関数と QueryIoRateControlInformationJobObject 関数によって使用されます。
構文
typedef struct JOBOBJECT_IO_RATE_CONTROL_INFORMATION {
LONG64 MaxIops;
LONG64 MaxBandwidth;
LONG64 ReservationIops;
PCWSTR VolumeName;
ULONG BaseIoSize;
ULONG ControlFlags;
} JOBOBJECT_IO_RATE_CONTROL_INFORMATION;
メンバー
MaxIops
1 秒あたりの I/O 操作の I/O レートの上限 (IOPS)。 制限を指定しない場合は、0 に設定します。
MaxIops と MaxBandwith の両方を設定すると、オペレーティング システムによって I/O レートが到達する最初の制限が適用されます。
MaxBandwidth
1 秒あたりの I/O レートの最大制限 (バイト単位)。 制限を指定しない場合は、0 に設定します。
MaxBandwith と MaxIops の両方を設定すると、オペレーティング システムによって I/O レートが到達する最初の制限が適用されます。
ReservationIops
オペレーティング システムがジョブに予約する最小 I/O レートを設定します。 ジョブの予約を行うには、この値を 0 に設定します。
オペレーティング システムを使用すると、ジョブは可能であれば、この速度で I/O 操作を実行できます。 すべてのジョブの最小レートの合計がオペレーティング システムの容量を超えた場合、オペレーティング システムが各ジョブで I/O 操作を実行できる速度は、ジョブの予約に比例します。
VolumeName
I/O レートのポリシーを適用するボリュームの NT デバイス名。 NT デバイス名の詳細については、「 NT デバイス名」を参照してください。
このメンバーが NULL の場合、I/O レートのポリシーはオペレーティング システムのすべてのボリュームに適用されます。 たとえば、このメンバーが NULL で MaxIops メンバーが 100 の場合、100 IOPS のすべてのボリュームで I/O レートの集計制限を設定するのではなく、各ボリュームの I/O レートの上限は 100 IOPS に設定されます。
BaseIoSize
正規化された I/O ユニットの基本サイズ (バイト単位)。 たとえば、 BaseIoSize メンバーが 8,000 の場合、8,000 バイトごとに 1 つの I/O ユニットとしてカウントされます。 この例では 4,000 バイトも 1 つの I/O 単位ですが、8,001 バイトは 2 つの I/O ユニットです。
この基本 I/O サイズの値は、HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\コントロール\QoS の StorageBaseIOSize 値を使用して設定できます
レジストリ キー。BaseIoSize メンバーの値には、次の制約があります。
- SetIoRateControlInformationJobObject 関数では、関数に渡すJOBOBJECT_IO_RATE_CONTROL_INFORMATION構造体の BaseIoSize メンバーが 0 である必要があります。
- VolumeName メンバーが指定するボリュームが I/O レートの制御をサポートしていない場合、QueryIoRateControlInformationJobObject メソッドは、この構造体の BaseIoSize メンバーを 0 に設定します。
- VolumeName メンバーが指定するボリュームで I/O レートの制御がサポートされている場合、QueryIoRateControlInformationJobObject メソッドは、この構造体の BaseIoSize メンバーを正規化された I/O 単位の基本サイズに設定します。
ControlFlags
I/O レートを制御するためのポリシー。 このメンバーには、次のいずれかの値を指定できます。
値 | 説明 |
---|---|
|
この構造体が SetIoRateControlInformationJobObject 関数に渡されるときに、ジョブの I/O レートの制御をオンにします。 QueryIoRateControlInformationJobObject 関数でこの構造体を使用すると、ジョブの I/O レートの制御が有効になっていることを示します。 |
解説
要件
サポートされている最小のクライアント | Windows 10 [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2016 [デスクトップ アプリのみ] |
Header | jobapi2.h |