struttura MEMORY_BASIC_INFORMATION (ntifs.h)
Contiene informazioni su un intervallo di pagine nello spazio indirizzi virtuale di un processo. La routine ZwQueryVirtualMemory usa questa struttura.
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;
Members
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 è contenuta all'interno di questo intervallo di allocazione.
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 comporta una violazione di accesso. |
PAGE_EXECUTE 0x10 | L'accesso all'area delle pagine è consentito. Un tentativo di lettura o scrittura all'interno dell'area genera 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 in sola lettura/copia su scrittura. |
PAGE_GUARD 0x100 | È consentito l'accesso in lettura, scrittura ed esecuzione all'area delle pagine; Tuttavia, l'accesso all'area determina l'attivazione di una condizione di "area di protezione" 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'utilizzo nel 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.
State | 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 viene riservato un intervallo dello spazio indirizzi virtuale del processo senza allocare spazio di archiviazione fisico. |
Protect
Protezione di accesso delle pagine nell'area. Questo membro è uno dei valori elencati per il membro AllocationProtect .
Type
Tipo di pagine nell'area. Vengono definiti i tipi seguenti.
Type | 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. |
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 |
Intestazione | ntifs.h |