다음을 통해 공유


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, 서비스 팩 1
머리글 wdm.h(Wdm.h 포함)
IRQL <= APC_LEVEL

추가 정보

ExAcquireRundownProtectionCacheAware

ExAcquireRundownProtectionCacheAwareEx

ExAllocateCacheAwareRundownProtection

ExFreeCacheAwareRundownProtection

ExReInitializeRundownProtectionCacheAware

ExReleaseRundownProtectionCacheAware

ExReleaseRundownProtectionCacheAwareEx

ExRundownCompletedCacheAware

ExSizeOfRundownProtectionCacheAware

ExWaitForRundownProtectionReleaseCacheAware

캐시 인식 런다운 보호