Funzione FreeUserPhysicalPages (memoryapi.h)
Libera le pagine di memoria fisica allocate in precedenza usando AllocateUserPhysicalPages o AllocateUserPhysicalPagesNuma. Se una di queste pagine è attualmente mappata nell'area Address Windowing Extensions (AWE), viene automaticamente annullata da questa chiamata. Ciò non influisce sullo spazio indirizzi virtuale occupato da un'area AWE (Address Windowing Extensions) specificata.
Windows a 64 bit nei sistemi basati su Itanium: A causa della differenza nelle dimensioni delle pagine, FreeUserPhysicalPages non è supportato per le applicazioni a 32 bit.
Sintassi
BOOL FreeUserPhysicalPages(
[in] HANDLE hProcess,
[in, out] PULONG_PTR NumberOfPages,
[in] PULONG_PTR PageArray
);
Parametri
[in] hProcess
Handle di un processo.
La funzione libera la memoria all'interno dello spazio indirizzi virtuale di questo processo.
[in, out] NumberOfPages
Dimensione della memoria fisica da liberare, nelle pagine.
Se la funzione ha esito negativo, questo parametro indica il numero di pagine liberate.
[in] PageArray
Puntatore a una matrice di numeri di frame di pagina della memoria allocata da liberare.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è TRUE.
Se la funzione ha esito negativo, il valore restituito è FALSE. In questo caso, il parametro NumberOfPages riflette il numero di pagine effettivamente rilasciate. Per informazioni dettagliate sull'errore, chiamare GetLastError.
Commenti
In un ambiente multiprocessore questa funzione mantiene la coerenza del buffer di conversione hardware. Quando questa funzione viene restituita, tutti i thread in tutti i processori sono garantiti per visualizzare il mapping corretto.
Per compilare un'applicazione che usa questa funzione, definire la macro _WIN32_WINNT come 0x0500 o versione successiva. Per altre informazioni, vedere Uso delle intestazioni di Windows.
Esempio
Per un esempio, vedere Esempio di AWE.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | memoryapi.h (include Windows.h, Memoryapi.h) |
Libreria | onecore.lib |
DLL | Kernel32.dll |