Concetto di spazio degli indirizzi

2

Ho cercato l'idea di spazio degli indirizzi che è The set of all legal addresses in memory for a given application. The address space represents the amount of memory available to a program. Non riesco a scoprire come viene implementato questo concetto? E come funziona con il sistema operativo? Qualsiasi aiuto sarebbe apprezzato.

    
posta james 05.10.2012 - 19:49
fonte

1 risposta

1

Un indirizzo può essere rappresentato da un numero intero non negativo, quindi "spazio indirizzo" è un modo elegante per descrivere un insieme di numeri interi non negativi in modo che ogni intero rappresenti un indirizzo valido in la memoria disponibile per il tuo programma.

In alcuni casi, diversi spazi di indirizzi possono essere disponibili per il tuo programma: ad esempio, quando sei su un sistema che segue un'architettura di Harvard, il tuo programma ha due spazi di indirizzo: uno per il codice e uno per i dati. In casi del genere un numero intero non negativo non è più sufficiente per definire in modo univoco una posizione in memoria; devi anche specificare a quale dei due spazi indirizzo appartiene il numero intero.

L'implementazione di uno spazio di indirizzamento viene eseguita nell'hardware: un numero viene mappato su una posizione in memoria da parte di un'elettronica dedicata che controlla l'interfaccia tra la CPU e la memoria. I sistemi operativi controllano questo hardware allocando blocchi di memoria fisica a uno spazio di indirizzi virtuali di un programma in esecuzione.

    
risposta data 05.10.2012 - 20:51
fonte

Leggi altre domande sui tag