Condividi tramite


Funzione NdisFreeMemory (ndis.h)

La funzione NdisFreeMemory rilascia un blocco di memoria precedentemente allocato con la funzione NdisAllocateMemoryWithTagPriority .

Sintassi

void NdisFreeMemory(
  [in] PVOID VirtualAddress,
  [in] UINT  Length,
  [in] UINT  MemoryFlags
);

Parametri

[in] VirtualAddress

Puntatore all'indirizzo virtuale di base della memoria allocata. Questo indirizzo è stato restituito dalla funzione NdisAllocateMemoryWithTagPriority .

[in] Length

Dimensioni, in byte, del blocco di memoria da rilasciare. Se la memoria è stata allocata con NdisAllocateMemoryWithTagPriority o il parametro MemoryFlags è zero, questo parametro viene ignorato.

[in] MemoryFlags

Set di flag che specificano il tipo di memoria da liberare. Questo valore deve essere zero se la memoria è stata allocata con NdisAllocateMemoryWithTagPriority. Con NDIS 6.0 e versioni successive, NdisAllocateMemoryWithTagPriority viene sempre usato per allocare memoria.

Valore restituito

nessuno

Osservazioni

Poiché la memoria non memorizzata e la memoria contigua vengono rilasciate raramente finché il driver miniport allocato non viene scaricato, un chiamante di NdisFreeMemory è in genere in esecuzione in IRQL = PASSIVE_LEVEL per questi tipi di deallocazione. In ogni caso:

  • Quando si rilascia memoria contigua, un chiamante di NdisFreeMemory deve essere in esecuzione in IRQL = PASSIVE_LEVEL.
  • Quando si rilascia memoria non memorizzata, un chiamante di NdisFreeMemory deve essere in esecuzione in irQL < DISPATCH_LEVEL.
  • Quando si rilascia memoria che non è contigua né non con estensione, un chiamante di NdisFreeMemory deve essere in esecuzione in IRQL <= DISPATCH_LEVEL.

Requisiti

Requisito Valore
Client minimo supportato Supportato per i driver NDIS 6.0 e NDIS 5.1 (vedere NdisFreeMemory (NDIS 5.1) in Windows Vista. Supportato per i driver NDIS 5.1 (vedere NdisFreeMemory (NDIS 5.1) in Windows XP.
Piattaforma di destinazione Universale
Intestazione ndis.h (includere Ndis.h)
Libreria Ndis.lib
IRQL Vedere La sezione Osservazioni
Regole di conformità DDI Irql_Miscellaneous_Function(ndis), NdisAllocateMemoryWithTagPriority_Cleanup(ndis), NdisAllocateMemoryWithTagPriority_InitFail( ndis), NdisQueryBindInstanceName(ndis)

Vedi anche

MiniportHaltEx

NdisAllocateMemoryWithTagPriority