Fonction ExInitializeRundownProtectionCacheAware (wdm.h)
Cette routine initialise un objet de protection d’exécution 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 opaque EX_RUNDOWN_REF_CACHE_AWARE . Pour plus d'informations, consultez la section Notes.
[in] RunRefSize
Spécifie la taille, en octets, de l’objet de protection d’exécution.
Valeur de retour
None
Remarques
La protection contre les exécutions est un mécanisme de synchronisation utilisé par le noyau Windows pour propre en toute sécurité des ressources auxquelles plusieurs threads peuvent accéder.
Cette fonction est optimisée pour les scénarios où les modèles d’accès à une ressource protégée prennent en charge le cache, ce qui signifie que le même thread est susceptible d’accéder à la ressource à plusieurs reprises, et que 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 sont en concurrence pour 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 une 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 contre les exécutions. L’appelant doit d’abord appeler ExSizeOfRundownProtectionCacheAware pour déterminer la taille appropriée pour l’objet de protection contre l’exécution. 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 .
Configuration requise
Condition requise | Valeur |
---|---|
Serveur minimal pris en charge | Windows Server 2003, Service Pack 1 |
En-tête | wdm.h (inclure Wdm.h) |
IRQL | <= APC_LEVEL |
Voir aussi
ExAcquireRundownProtectionCacheAware
ExAcquireRundownProtectionCacheAwareEx
ExAllocateCacheAwareRundownProtection
ExFreeCacheAwareRundownProtection
ExReInitializeRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAware
ExReleaseRundownProtectionCacheAwareEx
ExSizeOfRundownProtectionCacheAware