NdisMFreeSharedMemory, fonction (ndis.h)
NdisMFreeSharedMemory libère de la mémoire précédemment allouée par NdisMAllocateSharedMemory ou NdisMAllocateSharedMemoryAsyncEx par le pilote d’une carte réseau DMA.
Syntaxe
void NdisMFreeSharedMemory(
[in] NDIS_HANDLE MiniportAdapterHandle,
[in] ULONG Length,
[in] BOOLEAN Cached,
[in] PVOID VirtualAddress,
[in] NDIS_PHYSICAL_ADDRESS PhysicalAddress
);
Paramètres
[in] MiniportAdapterHandle
Spécifie l’entrée de handle à l’origine pour MiniportInitializeEx.
[in] Length
Spécifie le nombre d’octets alloués à l’origine.
[in] Cached
Spécifie TRUE si l’allocation d’origine était mise en cache.
[in] VirtualAddress
Spécifie l’adresse virtuelle de base retournée par NdisMAllocateSharedMemory ou NdisMAllocateSharedMemoryAsyncEx.
[in] PhysicalAddress
Spécifie l’adresse physique correspondante retournée par NdisMAllocateSharedMemory ou NdisMAllocateSharedMemoryAsyncEx.
Valeur de retour
Aucun
Remarques
S’il a déjà effectué un appel réussi à NdisMAllocateSharedMemory ou NdisMAllocateSharedMemoryAsyncEx, le pilote miniport d’un appareil DMA appelle NdisMFreeSharedMemory si l’une des opérations suivantes se produit :
- Sa fonction MiniportInitializeEx n’est pas en mesure d’initialiser la carte réseau. Cette fonction doit donc libérer toutes les revendications existantes sur les ressources matérielles de cette carte réseau avant de retourner le contrôle.
- Carte réseau pour laquelle le pilote miniport a alloué la mémoire est supprimée.
- Le pilote est déchargé, que ce soit parce que le système s’arrête ou que l’utilisateur reconfigure les composants réseau utilisés dans l’ordinateur.
- Le pilote a alloué une mémoire partagée supplémentaire avec NdisMAllocateSharedMemoryAsyncEx lorsque la demande d’E/S sur une carte réseau était élevée, mais que le trafic réseau est désormais réaffecté à un niveau moyen.
NdisMFreeSharedMemory ne peut pas être appelé à partir d’une fonction MiniportShutdownEx.
Microsoft Windows Server 2003, Windows XP Service Pack 1 et versions ultérieures de Windows permettent aux cartes réseau DMA master bus et aux cartes réseau DMA subordonnées d’appeler NdisMFreeSharedMemory. Les versions antérieures autorisent uniquement les cartes réseau DMA de bus master à appeler NdisMFreeSharedMemory.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Pris en charge pour les pilotes NDIS 6.0 et NDIS 5.1 (voir NdisMFreeSharedMemory (NDIS 5.1)) dans Windows Vista. Pris en charge pour les pilotes NDIS 5.1 (voir NdisMFreeSharedMemory (NDIS 5.1)) dans Windows XP. |
plateforme cible | Universel |
d’en-tête | ndis.h (include Ndis.h) |
bibliothèque | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
règles de conformité DDI | Irql_Miniport_Driver_Function(ndis), NdisMFreeSharedMemory(ndis) |