La memoria virtuale è resa possibile dall'uso di un meccanismo di paginazione. Le pagine sono blocchi di memoria di dimensione fissa, in genere 4 kilobyte (KB) o superiori, e ogni indirizzo virtuale è diviso in un numero di pagina e un offset all'interno della pagina. Quando un processo accede a un indirizzo virtuale, la MMU controlla se la pagina contenente quell'indirizzo è nella memoria fisica. Se la pagina è in memoria, la MMU traduce l'indirizzo virtuale in un indirizzo fisico e l'accesso è completato.
Se la pagina non è in memoria, la MMU genera un'eccezione di errore di pagina. Il sistema operativo (OS) gestisce quindi l'errore di pagina selezionando una pagina dalla memoria fisica da eliminare e sostituendola con la pagina necessaria dal disco. Questo processo è chiamato sostituzione della pagina. Il sistema operativo utilizza vari algoritmi per determinare quali pagine eliminare e questi algoritmi sono progettati per ridurre al minimo il numero di errori di pagina e quindi migliorare le prestazioni del sistema.
La memoria virtuale è una parte essenziale dei moderni sistemi operativi e consente ai computer di eseguire programmi molto più grandi della quantità di memoria fisica disponibile. Fornisce inoltre l'isolamento tra i processi, in modo che ogni processo abbia il proprio spazio di indirizzi virtuali privato e non possa accedere alla memoria di altri processi.
networking © www.354353.com