View Single Post
Old 11-09-2007, 14:40   #4
h1jack3r
Senior Member
 
L'Avatar di h1jack3r
 
Iscritto dal: May 2002
Città: somewhere in Europe
Messaggi: 2554
Provo a rispondere, vediamo se ho ben capito la domanda.
Se un processo ha allocata della memoria (non importa se fisica o virtuale), a quello spazio può accedere solo quel processo.
Quando si swappa dal processo A al processo B il sistema operativo si preoccperà di salvare i registri contenuti nel processore relativi al processo A, per poter poi ritornare all'esecuzione del processo A quando sarà il caso.
Mettiamo caso che ora sul processore stia girando il processo B.
La fase di decodifica degli indirizzi avviene a livello HW, dato la complessità delle operazioni e la quantità richiesta.
Se il processo B chiede di accedere ad un indirizzo riservato al processo A si scatena un interrupt e il controllo passa al Kernel del sistema operativo che genera un'eccezione.
In sostanza il processore non sa se una locazione di memoria è in memoria fisica o in swap, lui cerca comunque in memoria fisica, se non è presente è il sistema operativo che prende il controllo e trasferisce quella porzione di dati in memoria fisica.
h1jack3r è offline   Rispondi citando il messaggio o parte di esso