Funzioni di memoria virtuale

Le funzioni di memoria virtuale consentono a un processo di modificare o determinare lo stato delle pagine nello spazio indirizzi virtuale. Possono eseguire le operazioni seguenti:

  • Riservare un intervallo di spazio indirizzi virtuale di un processo. La riserva dello spazio degli indirizzi non alloca alcuna risorsa di archiviazione fisica, ma impedisce ad altre operazioni di allocazione di usare l'intervallo specificato. Non influisce sugli spazi degli indirizzi virtuali di altri processi. La prenotazione delle pagine impedisce l'utilizzo inutile dell'archiviazione fisica, consentendo a un processo di riservare un intervallo di spazio indirizzi in cui una struttura di dati dinamica può crescere. Il processo può allocare l'archiviazione fisica per questo spazio, in base alle esigenze.
  • Eseguire il commit di un intervallo di pagine riservate nello spazio indirizzi virtuale di un processo in modo che l'archiviazione fisica (in RAM o su disco) sia accessibile solo al processo di allocazione.
  • Specificare lettura/scrittura, sola lettura o nessun accesso per un intervallo di pagine commit. Ciò è diverso dalle funzioni di allocazione standard che allocano sempre le pagine con accesso in lettura/scrittura.
  • Liberare un intervallo di pagine riservate, rendendo disponibile l'intervallo di indirizzi virtuali per le operazioni di allocazione successive tramite il processo di chiamata.
  • Decommit una serie di pagine di commit, rilasciando l'archiviazione fisica e rendendolo disponibile per l'allocazione successiva da qualsiasi processo.
  • Bloccare una o più pagine di memoria di commit nella memoria fisica (RAM) in modo che il sistema non possa scambiare le pagine nel file di paging.
  • Ottenere informazioni su un intervallo di pagine nello spazio indirizzi virtuale del processo chiamante o di un processo specificato.
  • Modificare la protezione di accesso per un intervallo specificato di pagine commit nello spazio indirizzi virtuale del processo di chiamata o di un processo specificato.

Per ulteriori informazioni, vedere gli argomenti seguenti.