VDS_HINTS 構造体 (vds.h)
[Windows 8とWindows Server 2012以降、仮想ディスク サービス COM インターフェイスは Windows Storage Management API に置き換えられます。
LUN または LUN プレックスの自動マジック ヒントを定義します。
構文
typedef struct _VDS_HINTS {
ULONGLONG ullHintMask;
ULONGLONG ullExpectedMaximumSize;
ULONG ulOptimalReadSize;
ULONG ulOptimalReadAlignment;
ULONG ulOptimalWriteSize;
ULONG ulOptimalWriteAlignment;
ULONG ulMaximumDriveCount;
ULONG ulStripeSize;
BOOL bFastCrashRecoveryRequired;
BOOL bMostlyReads;
BOOL bOptimizeForSequentialReads;
BOOL bOptimizeForSequentialWrites;
BOOL bRemapEnabled;
BOOL bReadBackVerifyEnabled;
BOOL bWriteThroughCachingEnabled;
BOOL bHardwareChecksumEnabled;
BOOL bIsYankable;
SHORT sRebuildPriority;
} VDS_HINTS, *PVDS_HINTS;
メンバー
ullHintMask
LUN ヒント マスク。 この構造体の 各 BOOL メンバーには、マスクで設定できる対応するヒント フラグがあります。 ヒント フラグが設定されている場合は、対応するヒントが考慮されます。 ヒント フラグが設定されていない場合、ヒントは無視されます。 ヒント フラグについては、次の表で説明します。
ullExpectedMaximumSize
LUN の拡大が予想される最大サイズ (バイト単位)。 この値は、IVdsSubSystem::CreateLun メソッドが呼び出されたときに、ullSizeInBytes で指定された値と等しいか、より大きいか、より小さいかのいずれかです。 一部のプロバイダーでは、この値を使用して LUN の領域を予約します。 通常、領域を予約できないプロバイダーは、このパラメーターを無視します。
ulOptimalReadSize
LUN の最適な読み取りサイズ (バイト単位)。 ゼロは、最適な読み取りサイズがないことを示します。
ulOptimalReadAlignment
LUN の最初の論理ブロックに対する最適な読み取りアラインメント。 ゼロは、最適な読み取りアラインメントがないことを示します。
ulOptimalWriteSize
LUN の最適な書き込みサイズ (バイト単位)。 ゼロは、最適な書き込みサイズがないことを示します。
ulOptimalWriteAlignment
LUN の最初の論理ブロックに対する最適な書き込みアラインメント。 ゼロは、最適な書き込み配置がないことを示します。
ulMaximumDriveCount
LUN に貢献するドライブの最大数。 0 は、最大ドライブ数がないことを示します。 この値を使用して、ストライプ セット内のストライプ インターリーブの数を制限できます。
ulStripeSize
ミラーまたはパリティ ストライプインターリーブ サイズ (バイト単位)。 0 の場合、ストライプ サイズは指定されません。
bFastCrashRecoveryRequired
このメンバーが TRUE の場合、復旧時間は制限されます。 ullHintMask メンバーのVDS_HINT_FASTCRASHRECOVERYREQUIRED フラグを設定して、このメンバーの関心を示します。
bMostlyReads
(パリティ ストライピングではなくミラーリングなど) ほとんどの読み取り使用パターンに合わせて最適化するには、このメンバーを TRUE に設定します。 それ以外の場合は、 FALSE に設定します。 ullHintMask メンバーのVDS_HINT_MOSTLYREADS フラグを設定して、このメンバーの関心を示します。
bOptimizeForSequentialReads
シーケンシャル読み取り使用パターンに合わせて最適化するには、このメンバーを TRUE に設定 します。 それ以外の場合は、 FALSE に設定します。 bOptimizeForSequentialReads メンバーと bOptimizeForSequentialWrites メンバーの両方を FALSE に設定すると、ランダム I/O 用に最適化されます。 ullHintMask メンバーのVDS_HINT_OPTIMIZEFORSEQUENTIALREADS フラグを設定して、このメンバーの関心を示します。
bOptimizeForSequentialWrites
シーケンシャル書き込みの使用パターンを最適化するには、このメンバーを TRUE に設定します。 それ以外の場合は、 FALSE に設定します。 bOptimizeForSequentialReads メンバーと bOptimizeForSequentialWrites メンバーの両方を FALSE に設定すると、ランダム I/O 用に最適化されます。 ullHintMask メンバーのVDS_HINT_OPTIMIZEFORSEQUENTIALWRITES フラグを設定して、このメンバーの関心を示します。
bRemapEnabled
このメンバーが TRUE の場合、プロバイダーは LUN エクステントをドライブ エクステントに自動的に再マップします。 FALSE の場合、ブロックが破損しないようにエクステントを明示的に再マップしない限り、LUN エクステントとドライブ エクステントのマッピングは LUN 構成後も固定されたままになります。 ullHintMask メンバーのVDS_HINT_REMAPENABLED フラグを設定して、このメンバーの関心を示します。
bReadBackVerifyEnabled
このメンバーが TRUE に設定されている場合、プロバイダーは読み取りバックによって LUN への書き込みを検証します。 FALSE に設定されている場合、プロバイダーは書き込みを検証しません。 ullHintMask メンバーのVDS_HINT_READBACKVERIFYENABLED フラグを設定して、このメンバーの関心を示します。
bWriteThroughCachingEnabled
このメンバーが TRUE の場合、プロバイダーは LUN で書き込みキャッシュを有効にします。 FALSE の場合、プロバイダーはライトスルー キャッシュを有効にしません。 ullHintMask メンバーのVDS_HINT_WRITETHROUGHCACHINGENABLED フラグを設定して、このメンバーの関心を示します。
bHardwareChecksumEnabled
このメンバーが TRUE の場合、プロバイダーは LUN でチェックサムを有効にします。 ullHintMask メンバーのVDS_HINT_HARDWARECHECKSUMENABLED フラグを設定して、このメンバーの関心を示します。
bIsYankable
このメンバーが TRUE の場合、LUN に貢献するドライブは、システムを大幅に中断することなく物理的に削除できます (これは通常、LUN が少数のドライブからのエクステントで構成されている場合に当てはまります)。 FALSE の場合、システムを大幅に中断しないと LUN を削除できません。 ullHintMask メンバーのVDS_HINT_ISYANKABLE フラグを設定して、このメンバーの関心を示します。
sRebuildPriority
LUN のリビルド優先度。 この値の範囲は、0 (最も低い優先度) から 15 (最も高い優先度) までです。
解説
IVdsSubSystem::Create Lun メソッドは、LUN を作成するためのヒントを提供するために、この構造体をパラメーターとして渡します。 これは、IVds Lun インターフェイスと IVds LunPlex インターフェイスの両方の ApplyHints メソッドでパラメーターとして渡され、新しいヒントのセットを LUN または LUN plex にそれぞれ適用します。 さらに、現在 LUN または LUN プレックスに適用されているヒントを報告するために、IVds Lun インターフェイスと IVds LunPlex インターフェイスの両方で QueryHints メソッドによって返されます。
ヒントは、実装者へのディレクティブではありません。 一般に、実装者はヒントを考慮に入れて最善を尽くす必要はありますが、それに従う義務はありません。 実装者は、技術的な理由から指定されたヒントに従うことができない場合や、そのヒントに従うと構成が悪くなる可能性がある場合に、代替手段を選択できます。
要件
サポートされている最小のクライアント | Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー | Windows Server 2003 [デスクトップ アプリのみ] |
ヘッダー | vds.h |