NdisMFreeSharedMemory-Funktion (ndis.h)
NdisMFreeSharedMemory gibt Arbeitsspeicher frei, der zuvor von NdisMAllocateSharedMemory zugewiesen wurde oder NdisMAllocateSharedMemoryAsyncEx vom Treiber einer DMA NIC.
Syntax
void NdisMFreeSharedMemory(
[in] NDIS_HANDLE MiniportAdapterHandle,
[in] ULONG Length,
[in] BOOLEAN Cached,
[in] PVOID VirtualAddress,
[in] NDIS_PHYSICAL_ADDRESS PhysicalAddress
);
Parameter
[in] MiniportAdapterHandle
Gibt das Handle an, das ursprünglich für MiniportInitializeEx-eingegeben wurde.
[in] Length
Gibt die Anzahl der ursprünglich zugewiesenen Bytes an.
[in] Cached
Gibt TRUE- an, wenn die ursprüngliche Zuordnung zwischengespeichert werden kann.
[in] VirtualAddress
Gibt die virtuelle Basisadresse an, die von NdisMAllocateSharedMemory oder NdisMAllocateSharedMemoryAsyncExzurückgegeben wird.
[in] PhysicalAddress
Gibt die entsprechende physische Adresse an, die von NdisMAllocateSharedMemory oder NdisMAllocateSharedMemoryAsyncExzurückgegeben wird.
Rückgabewert
Nichts
Bemerkungen
Wenn es bereits einen erfolgreichen Aufruf von NdisMAllocateSharedMemory oder NdisMAllocateSharedMemoryAsyncExruft der Miniporttreiber eines DMA-Geräts NdisMFreeSharedMemory auf, wenn eine der folgenden Aktionen auftritt:
- Die MiniportInitializeEx-Funktion kann die NIC nicht initialisieren. Daher muss diese Funktion alle vorhandenen Ansprüche für hardwareressourcen für diese NIC freigeben, bevor sie die Steuerung zurückgibt.
- Die NIC, für die der Miniporttreiber den Speicher zugewiesen hat, wird entfernt.
- Der Treiber wird entladen, unabhängig davon, ob das System heruntergefahren wird oder weil der Benutzer die im Computer verwendeten Netzwerkkomponenten neu konfiguriert hat.
- Der Treiber hat zusätzlichen gemeinsam genutzten Speicher mit NdisMAllocateSharedMemoryAsyncEx zugewiesen, als die E/A-Nachfrage auf einer NIC hoch war, der Netzwerkdatenverkehr wurde jedoch auf eine durchschnittliche Ebene abgesubt.
NdisMFreeSharedMemory kann nicht von einer MiniportShutdownEx--Funktion aufgerufen werden.
Microsoft Windows Server 2003, Windows XP Service Pack 1 und höhere Versionen von Windows ermöglichen sowohl Busmaster-DMA-NICs als auch untergeordnete DMA-NICs, NdisMFreeSharedMemoryaufzurufen. Frühere Versionen ermöglichen es nur Busmaster-DMA-NICs, NdisMFreeSharedMemoryaufzurufen.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt für NDIS 6.0- und NDIS 5.1-Treiber (siehe NdisMFreeSharedMemory (NDIS 5.1)) in Windows Vista. Unterstützt für NDIS 5.1-Treiber (siehe NdisMFreeSharedMemory (NDIS 5.1)) in Windows XP. |
Zielplattform- | Universal |
Header- | ndis.h (include Ndis.h) |
Library | Ndis.lib |
IRQL- | <= DISPATCH_LEVEL |
DDI-Complianceregeln | Irql_Miniport_Driver_Function(ndis), NdisMFreeSharedMemory(ndis) |