struttura MEMORY_BASIC_INFORMATION (ntifs.h)
Contiene informazioni su un intervallo di pagine nello spazio indirizzi virtuale di un processo. La routine
Sintassi
typedef struct _MEMORY_BASIC_INFORMATION {
PVOID BaseAddress;
PVOID AllocationBase;
ULONG AllocationProtect;
USHORT PartitionId;
SIZE_T RegionSize;
ULONG State;
ULONG Protect;
ULONG Type;
} MEMORY_BASIC_INFORMATION, *PMEMORY_BASIC_INFORMATION;
Membri
BaseAddress
Puntatore all'indirizzo di base dell'area delle pagine.
AllocationBase
Puntatore all'indirizzo di base di un intervallo di pagine allocate. La pagina a cui punta il membro BaseAddress
AllocationProtect
Opzione di protezione della memoria al momento dell'allocazione iniziale dell'area. Questo membro può essere una delle costanti seguenti definite in wdm.h o 0 se il chiamante non ha accesso.
Valore | Significato |
---|---|
PAGE_NOACCESS 0x01 | Non è consentito l'accesso all'area delle pagine. Un tentativo di lettura, scrittura o esecuzione all'interno dell'area genera una violazione di accesso. |
PAGE_EXECUTE 0x10 | È consentito eseguire l'accesso all'area delle pagine. Un tentativo di lettura o scrittura all'interno dell'area comporta una violazione di accesso. |
PAGE_READONLY 0x02 | È consentito l'accesso in sola lettura ed esecuzione all'area delle pagine. Un tentativo di scrittura all'interno dell'area comporta una violazione di accesso. |
PAGE_READWRITE 0x04 | È consentito l'accesso in lettura, scrittura ed esecuzione all'area delle pagine. Se è consentito l'accesso in scrittura alla sezione sottostante, viene condivisa una singola copia delle pagine. In caso contrario, le pagine vengono condivise di sola lettura/copy-on-write. |
PAGE_GUARD 0x100 | È consentito l'accesso in lettura, scrittura ed esecuzione all'area delle pagine; Tuttavia, l'accesso all'area fa sì che una condizione di "area di protezione immessa" venga generata nel processo soggetto. |
PAGE_NOCACHE 0x200 | Disabilitare la posizione delle pagine di cui è stato eseguito il commit nella cache dei dati. |
PAGE_WRITECOMBINE 0x400 | Disabilitare la posizione delle pagine di cui è stato eseguito il commit nella cache dei dati, combinare anche le scritture. |
PartitionId
Riservato per l'uso del sistema.
RegionSize
Dimensioni dell'area in byte a partire dall'indirizzo di base in cui tutte le pagine hanno attributi identici.
State
Stato delle pagine nell'area. Questo membro può essere uno dei valori seguenti.
Stato | Significato |
---|---|
MEM_COMMIT 0x1000 | Indica le pagine di cui è stato eseguito il commit per cui è stata allocata l'archiviazione fisica, in memoria o nel file di paging su disco. |
MEM_FREE 0x10000 | Indica le pagine gratuite non accessibili al processo chiamante e disponibili per l'allocazione. |
MEM_RESERVE 0x2000 | Indica le pagine riservate in cui un intervallo di spazio indirizzi virtuale del processo è riservato senza allocare alcuna risorsa di archiviazione fisica. |
Protect
Protezione di accesso delle pagine nell'area. Questo membro è uno dei valori elencati per il membro AllocationProtect
Type
Tipo di pagine nell'area. Sono definiti i tipi seguenti.
Digitare | Significato |
---|---|
MEM_IMAGE 0x1000000 | Indica che le pagine di memoria all'interno dell'area vengono mappate nella visualizzazione di una sezione dell'immagine. |
MEM_MAPPED 0x40000 | Indica che le pagine di memoria all'interno dell'area vengono mappate nella visualizzazione di una sezione. |
MEM_PRIVATE 0x20000 | Indica che le pagine di memoria all'interno dell'area sono private, ovvero non condivise da altri processi. |
Fabbisogno
Requisito | Valore |
---|---|
client minimo supportato | Windows 10 |
intestazione |
ntifs.h |