ExInitializeRundownProtectionCacheAware 関数 (wdm.h)

このルーチンは、キャッシュ対応のランダウン保護オブジェクトを初期化します。

構文

void ExInitializeRundownProtectionCacheAware(
  [out] PEX_RUNDOWN_REF_CACHE_AWARE RunRefCacheAware,
  [in]  SIZE_T                      RunRefSize
);

パラメーター

[out] RunRefCacheAware

ルーチンが不透明な EX_RUNDOWN_REF_CACHE_AWARE 構造体を返す、呼び出し元が指定したバッファーへのポインター。 詳細については、「解説」を参照してください。

[in] RunRefSize

ランダウン保護オブジェクトのサイズをバイト単位で指定します。

戻り値

なし

解説

ランダウン保護は、複数のスレッドによってアクセスされる可能性があるリソースを安全にクリーンするために Windows カーネルによって使用される同期メカニズムです。

この関数は、保護されたリソースへのアクセス パターンがキャッシュ対応のシナリオに最適化されています。つまり、同じスレッドがリソースに繰り返しアクセスする可能性があり、異なるスレッドがリソースのさまざまな部分にアクセスする可能性があります。 ExInitializeRundownProtection ではなくこの関数を使用すると、ドライバーはキャッシュ競合の可能性を減らすことができます。この場合、複数のスレッドが同じキャッシュラインで競合し、パフォーマンスが低下します。

この関数は通常、ドライバーの初期化フェーズ中に、操作する必要があるリソースを設定するときに使用されます。 ドライバーは、キャッシュ対応のランダウン保護によって保護する必要があるリソースごとにこの関数を呼び出します。

EX_RUNDOWN_REF_CACHE_AWARE構造体は、ランダウン保護を管理するために使用される不透明な構造体です。 呼び出し元は、まず ExSizeOfRundownProtectionCacheAware を呼び出して、ランダウン保護オブジェクトの適切なサイズを決定する必要があります。 このサイズを使用して 、RunRefCacheAware パラメーターのバッファーを割り当て、 RunRefSize パラメーターとしても渡す必要があります。

要件

要件
サポートされている最小のサーバー Windows Server 2003 Service Pack 1
Header wdm.h (Wdm.h を含む)
IRQL <= APC_LEVEL

こちらもご覧ください

ExAcquireRundownProtectionCacheAware

ExAcquireRundownProtectionCacheAwareEx

ExAllocateCacheAwareRundownProtection

ExFreeCacheAwareRundownProtection

ExReInitializeRundownProtectionCacheAware

ExReleaseRundownProtectionCacheAware

ExReleaseRundownProtectionCacheAwareEx

ExRundownCompletedCacheAware

ExSizeOfRundownProtectionCacheAware

ExWaitForRundownProtectionReleaseCacheAware

キャッシュ対応のランダウン保護