Funzioni di gestione della memoria
- Funzioni di memoria generali
- Funzioni di prevenzione dell'esecuzione dei dati
- Funzioni di mapping dei file
- Funzioni AWE
- Funzioni heap
- Funzioni di memoria virtuale
- Funzioni globali e locali
- Funzioni di memoria non valida
- Funzioni enclave
- Funzioni di atl thunk
- Funzioni obsolete
Funzioni di memoria generali
Funzione | Descrizione |
---|---|
AddSecureMemoryCacheCallback | Registra una funzione di callback da chiamare quando viene liberato un intervallo di memoria protetto o le relative protezioni vengono modificate. |
CopyDeviceMemory | Copia memoria da una posizione a un'altra senza interferenze dalle ottimizzazioni del compilatore in situazioni in cui lo sviluppatore deve anche assicurarsi che gli errori di allineamento non verranno generati durante l'accesso alla memoria del dispositivo. |
CopyMemory | Copia un blocco di memoria da una posizione a un'altra. |
CopyVolatileMemory | Copia il contenuto di un blocco di memoria di origine in un blocco di memoria di destinazione. |
CreateMemoryResourceNotification | Crea un oggetto notifica della risorsa di memoria. |
FillDeviceMemory | Imposta il contenuto di un buffer senza interferenze dalle ottimizzazioni del compilatore in situazioni in cui lo sviluppatore deve inoltre assicurarsi che gli errori di allineamento non vengano generati durante l'accesso alla memoria del dispositivo. |
FillMemory | Riempie un blocco di memoria con un valore specificato. |
FillVolatileMemory | Riempie un blocco di memoria con il valore di riempimento specificato. |
GetLargePageMinimum | Recupera le dimensioni minime di una pagina di grandi dimensioni. |
GetPhysicallyInstalledSystemMemory | Recupera la quantità di RAM installata fisicamente nel computer. |
GetSystemFileCacheSize | Recupera i limiti delle dimensioni correnti per il working set della cache di sistema. |
GetWriteWatch | Recupera gli indirizzi delle pagine scritte in in un'area di memoria virtuale. |
GlobalMemoryStatusEx | Ottiene informazioni sull'utilizzo corrente del sistema sia della memoria fisica che virtuale. |
MoveMemory | Sposta un blocco di memoria da una posizione a un'altra. |
MoveVolatileMemory | Copia il contenuto di un blocco di memoria di origine in un blocco di memoria di destinazione e supporta blocchi di memoria di origine e di destinazione sovrapposti. |
QueryMemoryResourceNotification | Recupera lo stato dell'oggetto risorsa di memoria specificato. |
RemoveSecureMemoryCacheCallback | Annulla la registrazione di una funzione di callback registrata in precedenza con la funzione AddSecureMemoryCacheCallback. |
ResetWriteWatch | Reimposta lo stato di rilevamento delle scritture per un'area di memoria virtuale. |
SecureMemoryCacheCallback | Funzione definita dall'applicazione chiamata quando viene liberato un intervallo di memoria protetto o le relative protezioni vengono modificate. |
SecureZeroMemory | Riempie un blocco di memoria con zeri. |
SecureZeroMemory2 | Riempie un blocco di memoria con zeri in modo da garantire la sicurezza. |
SetSystemFileCacheSize | Limita le dimensioni del working set per la cache del file system. |
ZeroDeviceMemory | Imposta il contenuto di un buffer su zero senza interferenze dalle ottimizzazioni del compilatore in situazioni in cui lo sviluppatore deve inoltre assicurarsi che gli errori di allineamento non vengano generati durante l'accesso alla memoria del dispositivo. |
ZeroMemory | Riempie un blocco di memoria con zeri. |
ZeroVolatileMemory | Riempie un blocco di memoria con zeri. |
Funzioni di prevenzione dell'esecuzione dei dati
Queste funzioni vengono usate con La prevenzione dell'esecuzione dei dati (DEP).
Funzione | Descrizione |
---|---|
GetProcessDEPPolicy | Recupera le impostazioni DEP per un processo. |
GetSystemDEPPolicy | Recupera le impostazioni DEP per il sistema. |
SetProcessDEPPolicy | Modifica le impostazioni DEP per un processo. |
Funzioni di mapping dei file
Queste funzioni vengono usate nel mapping di file.
Funzione | Descrizione |
---|---|
CreateFileMappingA | Crea o apre un oggetto di mapping di file denominato o senza nome per un file specificato. |
CreateFileMappingW | Crea o apre un oggetto di mapping di file denominato o senza nome per un file specificato. |
CreateFileMapping2 | Crea o apre un oggetto di mapping di file denominato o senza nome per un file specificato. È possibile specificare un nodo NUMA preferito per la memoria fisica come parametro esteso; vedere il parametro ExtendedParameters . |
CreateFileMappingFromApp | Crea o apre un oggetto di mapping di file denominato o senza nome per un file specificato da un'app di Windows Store. |
CreateFileMappingNuma | Crea o apre un oggetto di mapping di file denominato o senza nome per un file specificato e specifica il nodo NUMA per la memoria fisica. |
FlushViewOfFile | Scrive nel disco un intervallo di byte all'interno di una visualizzazione mappata di un file. |
GetMappedFileName | Controlla se l'indirizzo specificato si trova all'interno di un file mappato alla memoria nello spazio indirizzi del processo specificato. In tal caso, la funzione restituisce il nome del file mappato alla memoria. |
MapViewOfFile | Mappe una visualizzazione di un mapping di file nello spazio indirizzi di un processo chiamante. |
MapViewOfFile2 | Mappe una visualizzazione di un file o di una sezione basata su file di paging nello spazio degli indirizzi del processo specificato. |
MapViewOfFile3 | Mappe una visualizzazione di un file o di una sezione basata su file di paging nello spazio degli indirizzi del processo specificato. |
MapViewOfFile3FromApp | Mappe una visualizzazione di un mapping di file nello spazio indirizzi di un processo chiamante da un'app di Windows Store. |
MapViewOfFileEx | Mappe una visualizzazione di un mapping di file nello spazio indirizzi di un processo chiamante. Un chiamante può facoltativamente specificare un indirizzo di memoria suggerito per la visualizzazione. |
MapViewOfFileExNuma | Mappe una visualizzazione di un mapping di file nello spazio indirizzi di un processo chiamante e specifica il nodo NUMA per la memoria fisica. |
MapViewOfFileFromApp | Mappe una visualizzazione di un mapping di file nello spazio indirizzi di un processo chiamante da un'app di Windows Store. |
MapViewOfFileNuma2 | Mappe una visualizzazione di un file o di una sezione basata su file di paging nello spazio degli indirizzi del processo specificato. |
OpenFileMapping | Apre un oggetto di mapping di file denominato. |
OpenFileMappingFromApp | Apre un oggetto di mapping di file denominato. |
UnmapViewOfFile | Rimuove il mapping di una visualizzazione mappata di un file dallo spazio indirizzi del processo chiamante. |
UnmapViewOfFile2 | Annulla il mapping di una visualizzazione mappata in precedenza di un file o di una sezione supportata da file di pagina. |
UnmapViewOfFileEx | Annulla il mapping di una visualizzazione mappata in precedenza di un file o di una sezione supportata da file di pagina. |
Funzioni AWE
Queste sono le funzioni AWE.
Funzione | Descrizione |
---|---|
AllocateUserPhysicalPages | Alloca le pagine di memoria fisica di cui eseguire il mapping e il mapping all'interno di qualsiasi area AWE del processo. |
AllocateUserPhysicalPagesNuma | Alloca le pagine di memoria fisica di cui eseguire il mapping e il mapping all'interno di qualsiasi area AWE del processo e specifica il nodo NUMA per la memoria fisica. |
FreeUserPhysicalPages | Libera le pagine di memoria fisica allocate in precedenza con AllocateUserPhysicalPages. |
MapUserPhysicalPages | Mappe pagine di memoria fisica precedentemente allocate all'indirizzo specificato all'interno di un'area AWE. |
MapUserPhysicalPagesScatter | Mappe pagine di memoria fisica precedentemente allocate all'indirizzo specificato all'interno di un'area AWE. |
Funzioni heap
Queste sono le funzioni dell'heap.
Funzione | Descrizione |
---|---|
GetProcessHeap | Ottiene un handle per l'heap del processo chiamante. |
GetProcessHeaps | Ottiene gli handle per tutti gli heap validi per il processo chiamante. |
HeapAlloc | Alloca un blocco di memoria da un heap. |
HeapCompact | Coalesces blocchi liberi adiacenti di memoria in un heap. |
HeapCreare | Crea un oggetto heap. |
HeapDestroy | Elimina definitivamente l'oggetto heap specificato. |
HeapFree | Libera un blocco di memoria allocato da un heap. |
HeapLock | Tenta di acquisire il blocco associato a un heap specificato. |
HeapQueryInformation | Recupera informazioni sull'heap specificato. |
HeapReAlloc | Rialloca un blocco di memoria da un heap. |
HeapSetInformation | Imposta le informazioni sull'heap per l'heap specificato. |
HeapSize | Recupera le dimensioni di un blocco di memoria allocato da un heap. |
HeapUnlock | Rilascia la proprietà del blocco associato a un heap specificato. |
HeapValidate | Tenta di convalidare un heap specificato. |
HeapWalk | Enumera i blocchi di memoria in un heap specificato. |
Funzioni di memoria virtuale
Queste sono le funzioni di memoria virtuale.
Funzione | Descrizione |
---|---|
DiscardVirtualMemory | Elimina il contenuto della memoria di un intervallo di pagine di memoria, senza decommettere la memoria. Il contenuto della memoria rimossa non è definito e deve essere riscritto dall'applicazione. |
OfferVirtualMemory | Indica che i dati contenuti in un intervallo di pagine di memoria non sono più necessari per l'applicazione e possono essere rimossi dal sistema, se necessario. |
PrefetchVirtualMemory | Prelettura degli intervalli di indirizzi virtuali nella memoria fisica. |
QueryVirtualMemoryInformation | Restituisce informazioni su una pagina o un set di pagine all'interno dello spazio indirizzi virtuale del processo specificato. |
ReclaimVirtualMemory | Recupera un intervallo di pagine di memoria offerte al sistema con OfferVirtualMemory. |
SetProcessValidCallTargets | Fornisce cfg con un elenco di destinazioni di chiamata indirette valide e specifica se devono essere contrassegnate come valide o meno. |
Virtualalloc | Riserva o esegue il commit di un'area di pagine nello spazio degli indirizzi virtuali del processo chiamante. |
VirtualAlloc2 | Riserva, commit o modifica lo stato di un'area di memoria all'interno dello spazio indirizzi virtuale di un processo specificato. La funzione inizializza la memoria allocata a zero. |
VirtualAlloc2FromApp | Riserva, commit o modifica lo stato di un'area di pagine nello spazio degli indirizzi virtuali del processo chiamante. La memoria allocata da questa funzione viene inizializzata automaticamente su zero. |
VirtualAllocEx | Riserva o esegue il commit di un'area di pagine nello spazio indirizzi virtuale del processo specificato. |
VirtualAllocExNuma | Riserva o esegue il commit di un'area di memoria all'interno dello spazio indirizzi virtuale del processo specificato e specifica il nodo NUMA per la memoria fisica. |
VirtualAllocFromApp | Riserva, commit o modifica lo stato di un'area di pagine nello spazio degli indirizzi virtuali del processo chiamante. La memoria allocata da questa funzione viene inizializzata automaticamente su zero. |
Virtualfree | Rilascia o decommette un'area di pagine all'interno dello spazio indirizzi virtuale del processo chiamante. |
VirtualFreeEx | Rilascia o decommette un'area di memoria all'interno dello spazio indirizzi virtuale di un processo specificato. |
VirtualLock | Blocca l'area specificata dello spazio indirizzi virtuale del processo nella memoria fisica. |
VirtualProtect | Modifica la protezione di accesso in un'area di pagine di cui è stato eseguito il commit nello spazio indirizzi virtuale del processo chiamante. |
VirtualProtectEx | Modifica la protezione di accesso in un'area di pagine di cui è stato eseguito il commit nello spazio indirizzi virtuale del processo chiamante. |
VirtualProtectFromApp | Modifica la protezione in un'area di pagine di cui è stato eseguito il commit nello spazio degli indirizzi virtuali del processo chiamante. |
VirtualQuery | Fornisce informazioni su un intervallo di pagine nello spazio degli indirizzi virtuali del processo chiamante. |
VirtualQueryEx | Fornisce informazioni su un intervallo di pagine nello spazio degli indirizzi virtuali del processo chiamante. |
VirtualUnlock | Sblocca un intervallo specificato di pagine nello spazio indirizzi virtuale di un processo. |
Funzioni globali e locali
Vedere anche funzioni globali e locali. Queste funzioni vengono fornite per la compatibilità con Windows a 16 bit e vengono usate con Dynamic Data Exchange (DDE), le funzioni degli Appunti e gli oggetti dati OLE. A meno che la documentazione non indichi specificamente che deve essere usata una funzione globale o locale, le nuove applicazioni devono usare la funzione heap corrispondente con l'handle restituito da GetProcessHeap. Per la funzionalità equivalente alla funzione globale o locale, impostare il parametro dwFlags della funzione heap su 0.
Funzione | Descrizione | Funzione heap corrispondente |
---|---|---|
GlobalAlloc, LocalAlloc | Alloca il numero specificato di byte dall'heap. | HeapAlloc |
GlobalDiscard, LocalDiscard | Rimuove il blocco di memoria globale specificato. | Non applicabile. |
GlobalFlags, LocalFlags | Restituisce informazioni sull'oggetto memoria globale specificato. | Non applicabile. Usare HeapValidate per convalidare l'heap. |
GlobalFree, LocalFree | Libera l'oggetto memoria globale specificato. | HeapFree |
GlobalHandle, LocalHandle | Recupera l'handle associato al puntatore specificato a un blocco di memoria globale. Questa funzione deve essere usata solo con le funzioni OLE e Appunti che lo richiedono. | Non applicabile. |
GlobalLock, LocalLock | Blocca un oggetto memoria globale e restituisce un puntatore al primo byte del blocco di memoria dell'oggetto. | Non applicabile. |
GlobalReAlloc, LocalReAlloc | Modifica le dimensioni o gli attributi di un oggetto memoria globale specificato. | HeapReAlloc |
GlobalSize, LocalSize | Recupera le dimensioni correnti dell'oggetto memoria globale specificato. | HeapSize |
GlobalUnlock, LocalUnlock | Decrementa il conteggio dei blocchi associato a un oggetto memoria. Questa funzione deve essere usata solo con le funzioni OLE e Appunti che lo richiedono. | Non applicabile. |
Funzioni di memoria non valida
Funzione | Descrizione |
---|---|
BadMemoryCallbackRoutine | Funzione definita dall'applicazione registrata con la funzione RegisterBadMemoryNotification chiamata quando vengono rilevate una o più pagine di memoria non valida. |
GetMemoryErrorHandlingCapabilities | Ottiene le funzionalità di gestione degli errori di memoria del sistema. |
RegisterBadMemoryNotification | Registra una notifica di memoria non valida che viene chiamata quando vengono rilevate una o più pagine di memoria non valida. |
UnregisterBadMemoryNotification | Chiude l'handle di notifica di memoria non valido specificato. |
Funzioni enclave
Funzione | Descrizione |
---|---|
CreateEnclave | Crea una nuova enclave non inizializzata. Un enclave è un'area isolata di codice e dati all'interno dello spazio indirizzi per un'applicazione. Solo il codice eseguito all'interno dell'enclave può accedere ai dati all'interno della stessa enclave. |
InitializeEnclave | Inizializza un enclave creato e caricato con i dati. |
IsEnclaveTypeSupported | Recupera un valore che indica se il tipo di enclave specificato è supportato. |
LoadEnclaveData | Carica i dati in un enclave non inizializzato creato chiamando CreateEnclave. |
Funzioni di atl thunk
Funzione | Descrizione |
---|---|
AtlThunk_AllocateData | Alloca spazio in memoria per un file ATL.Allocate space in memory for an ATL enumerato. |
AtlThunk_DataToCode | Restituisce una funzione eseguibile corrispondente al parametro AtlThunkData_t. |
AtlThunk_FreeData | Libera la memoria associata a un pacchetto ATL. |
AtlThunk_InitData | Inizializza un pacchetto ATL.Initialize an ATL integerk. |
Funzioni obsolete
Queste funzioni vengono fornite solo per compatibilità con le versioni a 16 bit di Windows:
La funzione seguente può restituire informazioni non corrette e non deve essere usata. Usare invece la funzione GlobalMemoryStatusEx.
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per