Pages: [1]   Go Down
Print
Author Topic: soluzione esercizio sulla paginazione  (Read 2818 times)
0 Members e 1 Utente non registrato stanno visualizzando questa discussione.
corsair
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 273



« on: 22-07-2011, 11:18:05 »

riporto il testo dell'esercizio presente nello "stralcio di prova" riportato nelle faq del sito del corso.

Quote
Consideriamo un sistema che fa uso di memoria virtuale con le seguenti caratteristiche: uno
spazio di indirizzamento virtuale da 1 Gb, un numero di pagina virtuale a 22 bit e un indirizzo
fisico a 20 bit. Determinare esattamente quanti frame fisici ci sono in memoria.
ATTENZIONE il seguente procedimento contiene degli errori la versione corretta è quì: http://forum.sdai.unict.it/index.php?topic=13391.msg82543#msg82543
volevo sapere se la mia soluzione è corretta:

lo spazio di indirizzamento virtuale è 1 gb = 1024^3 byte = 1073741824 byte

con un numero a 22 bit possiamo individuare un numero di pagine pari a : 2^23 pagine =8388608

adesso possiamo calcolare la dimensione di una pagina dividendo la dimensione dell'indirizzamento virtuale fratto il numero di pagine ovvero:
1073741824 byte/8388608 pagine= 128 byte(dimensione di una pagina)
l'indirizzamento fisico è a 20 bit quindi la dimensione totale  della ram è di 2^21=2097152 byte

sapendo che la dimensione di una pagina è 128 byte il numero di frame in memoria ram è 2097152/128=16384 frame

è corretto il mio ragionamento?
« Last Edit: 22-07-2011, 12:13:46 by corsair » Logged
corsair
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 273



« Reply #1 on: 22-07-2011, 11:47:43 »

ho cercato nel forum ed ho trovato questa discussione:http://forum.sdai.unict.it/index.php?topic=12687.0

in cui vengono poste diverse soluzioni  tra qui quella che potrebbe secondo me essere corretta è l'ultima che riporto per comodità:
Quote
1gb = 1024^3 = 2^30 bit

quindi m=30;
poichè il numero di pagina virutale (m-n) è 22 bit l'offset (n) sarà 8 bit;

spazio degli ind.fisici= 2^t = 2^20

frame=2^(t-n)= 2^(20-8) = 4096

Delaserna (l'autore della soluzione)  non l'ha specificato ma "m" credo sia il numero di bit che compongono l'indirizzo virutale ed n sia la dimensione della pagine t è il numero di bit che compongono l'indirizzo fisico.. per chiarezza vedete il terzo blocco di slide a pagina 10.

Sono più che convinto che questa soluzione sia quella corretta :-)
Logged
corsair
Apprendista Forumista
**
Offline Offline

Gender: Male
Posts: 273



« Reply #2 on: 22-07-2011, 12:07:24 »

ok non essendo convinto del fatto che la mia soluzione fosse sbagliata ho rifatto i calcoli.. e non so perchè, stupidamente ho aggiunto 1 nelle potenze di due, invece di fare 2^22 ho calcolato 2^23...

ricopio quanto scritto prima cambiando i valori:
o spazio di indirizzamento virtuale è 1 gb = 1024^3 byte = 1073741824 byte

con un numero a 22 bit possiamo individuare un numero di pagine pari a : 2^22  pagine =4194304

adesso possiamo calcolare la dimensione di una pagina dividendo la dimensione dell'indirizzamento virtuale fratto il numero di pagine ovvero:
1073741824 byte/4194304 pagine= 256 byte(dimensione di una pagina)
l'indirizzamento fisico è a 20 bit quindi la dimensione totale  della ram è di 2^20=1048576 byte

sapendo che la dimensione di una pagina è 256 byte il numero di frame in memoria ram è 1048576/256=4096 frame

ero abbastanza sicuro del fatto che i due risultati dovessero combaciare perché sono due lati della stessa medaglia, se ci fosse stato qualcosa di diverso allora il tutto non poteva funzionare.

Logged
Damon Baird
Matricola
*
Offline Offline

Gender: Male
Posts: 67



« Reply #3 on: 23-07-2011, 10:22:24 »

secondo me il ragionamento è giustissimo, non vedo altre vie di ragionamento, basta fare due conti semplici, credo che le difficoltà stia nell'aver ben capito cosa sono gli indirizzi virtuali, le pagine e che relazione hanno con i frame fisici.
Logged
Pages: [1]   Go Up
Print
Jump to: