La CPU può accedere direttamente solo ai registri interni e alla memoria centrale (RAM); le istruzioni macchina utilizzano indirizzi di memoria come argomenti.
Per la protezione e la gestione dei processi concorrenti, vengono utilizzati due registri hardware: il Registro di base (indirizzo più basso della memoria fisica) e il Registro di limite (dimensione dell'intervallo). L'accesso al di fuori di questo intervallo viene bloccato dal sistema operativo.
Un programma utente passa attraverso diverse fasi di elaborazione prima dell'esecuzione:
Tempo di compilazione: I vari componenti del codice sorgente vengono compilati, producendo moduli oggetto.
Tempo di caricamento: Un linker combina i moduli oggetto con altre librerie, oppure un loader carica il codice direttamente in memoria, rendendolo eseguibile.
Run time (esecuzione): Anche durante l'esecuzione, è possibile allocare dinamicamente altre librerie (dynamic linking).
L'associazione tra indirizzo logico (generato dalla CPU) e indirizzo fisico (visualizzato dall'unità di gestione della memoria, MMU) può avvenire in tre diverse fasi:
Compilazione: Se l'indirizzo di memoria in cui il processo verrà caricato è già noto, il compilatore genera direttamente il codice assoluto. Tuttavia, se la posizione iniziale cambia, è necessaria una ricompilazione del codice.
Caricamento: Se la posizione non è nota al momento della compilazione, viene generato codice rilocabile (indirizzi relativi). L'associazione finale avviene sommando l'indirizzo logico all'indirizzo di ricollocazione al momento del caricamento, offrendo maggiore flessibilità.
Esecuzione: L'associazione degli indirizzi viene ritardata fino all'esecuzione. Questo permette al processo di essere spostato tra diversi segmenti di memoria durante la sua esecuzione, garantendo la massima flessibilità.
Siamo nati da poco ma abbiamo già migliaia di appunti nella nostra community!
Completa il tuo profilo
Adesso sei dei nostri!
Ottieni i primi crediti!
Carica i tuoi file
Il modo più veloce per guadagnare crediti è caricare materiale.
Ci sono tante tipologie di materiale e siamo certi che hai tanto valore da condividere con la community!
Accidenti, ancora non abbiamo il tuo corso di laurea!
Se ti va puoi inserirlo tu in pochi click — anche solo il corso di laurea, oppure completo di tutti i corsi!
Aggiungilo subito
e faremo del nostro meglio per popolarlo di materiale interessante.
Nel frattempo inizia a guadagnare crediti invitando i tuoi amici, così appena saremo attivi potrai subito accedere al materiale disponibile.
Bastano 3 amici verificati per attivare l'abbonamento…
Consiglia ai tuoi amici
Scrivi ai tuoi vecchi amici o ai tuoi nuovi colleghi di studio. Ogni email che inserisci rappresenta un mattone importante per la community.
Per ogni amico che porti otterrai nuovi crediti!