NdisFreeMemoryWithTagPriority, fonction (ndis.h)
La fonction NdisFreeMemoryWithTagPriority libère la mémoire allouée avec la fonction fonction NdisAllocateMemoryWithTagPriority.
Syntaxe
void NdisFreeMemoryWithTagPriority(
[in] NDIS_HANDLE NdisHandle,
[in] PVOID VirtualAddress,
[in] ULONG Tag
);
Paramètres
[in] NdisHandle
Pilote NDIS ou handle d’instance obtenu lors de l’initialisation de l’appelant. Il doit s’agir du même handle que celui passé au pilote fonction NdisAllocateMemoryWithTagPriority. Par exemple, un pilote miniport peut utiliser le handle NDIS qu’il a obtenu à partir du NdisMRegisterMiniportDriver ou Fonction MiniportInitializeEx. D’autres pilotes NDIS peuvent utiliser les handles des fonctions suivantes :
[in] VirtualAddress
Pointeur vers l’adresse virtuelle de base de la mémoire allouée. Cette adresse a été retournée par le fonction NdisAllocateMemoryWithTagPriority.
[in] Tag
Chaîne, délimitée par des guillemets simples, avec jusqu’à quatre caractères, généralement spécifiée dans l’ordre inverse. La balise par défaut fournie par NDIS pour cet appel est « maDN », mais l’appelant peut remplacer cette valeur par défaut en fournissant une valeur explicite.
Valeur de retour
Aucun
Remarques
Étant donné que la mémoire non mise en cache et la mémoire contiguë sont rarement libérées jusqu’à ce que le pilote miniport d’allocation soit déchargé, un appelant de NdisFreeMemoryWithTagPriority est généralement en cours d’exécution à IRQL = PASSIVE_LEVEL pour ces types de désaffectations. Dans tous les cas :
- Lorsqu’un appelant de NdisFreeMemoryWithTagPriority libère la mémoire contiguë, il doit s’exécuter à IRQL = PASSIVE_LEVEL.
- Lorsqu’un appelant de NdisFreeMemoryWithTagPriority libère de la mémoire non mise en cache, il doit s’exécuter au < DISPATCH_LEVEL IRQL.
- Lorsqu’un appelant de NdisFreeMemoryWithTagPriority libère la mémoire qui n’est ni contiguë ni non mise en cache, elle doit s’exécuter sur IRQL <= DISPATCH_LEVEL.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Pris en charge dans NDIS 6.20 et versions ultérieures. |
plateforme cible | Universel |
d’en-tête | ndis.h (include Ndis.h) |
bibliothèque | Ndis.lib |
IRQL | Voir la section Remarques. |
règles de conformité DDI | NdisAllocateMemoryWithTagPriority_Cleanup(ndis), NdisAllocateMemoryWithTagPriority_InitFail(ndis) |