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

ExRundownCompletedCacheAware

ExSizeOfRundownProtectionCacheAware

ExWaitForRundownProtectionReleaseCacheAware

Protection d’exécution prenant en compte le cache