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
ExSizeOfRundownProtectionCacheAware