ExInitializeRundownProtectionCacheAware, fonction (wdm.h)
Cette routine initialise un objet de protection rundown prenant en compte le cache.
Syntaxe
void ExInitializeRundownProtectionCacheAware(
[out] PEX_RUNDOWN_REF_CACHE_AWARE RunRefCacheAware,
[in] SIZE_T RunRefSize
);
Paramètres
[out] RunRefCacheAware
Pointeur vers une mémoire tampon fournie par l’appelant où la routine retourne une structure de EX_RUNDOWN_REF_CACHE_AWARE opaque. Pour plus d’informations, consultez les remarques.
[in] RunRefSize
Spécifie la taille, en octets, de l’objet de protection d’exécution.
Valeur de retour
Aucun
Remarques
La protection de rundown est un mécanisme de synchronisation utilisé par le noyau Windows pour nettoyer en toute sécurité les ressources accessibles par plusieurs threads.
Cette fonction est optimisée pour les scénarios où les modèles d’accès à une ressource protégée sont conscients du cache, ce qui signifie que le même thread est susceptible d’accéder à la ressource à plusieurs reprises, et différents threads sont susceptibles d’accéder à différentes parties de la ressource. En utilisant cette fonction plutôt qu’ExInitializeRundownProtection, un pilote peut réduire la probabilité de contention du cache, où plusieurs threads concurrencent les mêmes lignes de cache, ce qui entraîne une dégradation des performances.
Cette fonction est généralement utilisée pendant la phase d’initialisation d’un pilote, lorsqu’elle configure les ressources dont elle a besoin pour fonctionner. Le pilote appelle cette fonction pour chaque ressource qui doit être protégée par la protection d’exécution prenant en charge le cache.
La structure EX_RUNDOWN_REF_CACHE_AWARE est une structure opaque utilisée pour gérer la protection d’exécution. L’appelant doit d’abord appeler ExSizeOfRundownProtectionCacheAware pour déterminer la taille appropriée pour l’objet de protection rundown. Cette taille doit ensuite être utilisée pour allouer une mémoire tampon pour le paramètre RunRefCacheAware et également passée en tant que paramètre RunRefSize.
Exigences
Exigence | Valeur |
---|---|
serveur minimum pris en charge | Windows Server 2003, Service Pack 1 |
d’en-tête | wdm.h (include Wdm.h) |
IRQL | <= APC_LEVEL |
Voir aussi
ExAcquireRundownProtectionCacheAware
ExAcquireRundownProtectionCacheAwareEx
ExAllocateCacheAwareRundownProtection
ExFreeCacheAwareRundownProtection
ExReInitializeRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAwareEx
ExSizeOfRundownProtectionCacheAware