다음을 통해 공유


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

캐시 인식 런다운 보호