next up previous
Next: Soluzioni Up: parte2 Previous: parte2

Esercizi di preparazione al secondo compitino

Esercizio 1   Un bus é dotato delle seguenti linee: una linea CLK per trasportare il segnale di clock, un insieme di linee per gli indirizzi (Address), un insieme di linee (Cmd) per indicare il tipo di operazione (lettura/scrittura, memoria/IO), un insieme di linee per il trasporto dei dati (Data)), una linea /REQ pilotata dal master, una linea /RDY pilotata dallo slave.

Il ciclo di lettura standard ha una durata di 6 periodi di clock $(T_1 -
T_6)$: a partire dal fronte in salita di $T_1$ il master pilota le linee degli indirizzi e le linee Cmd (con un ritardo $T_{ad}$).

A partire dal fronte in discesa di $T_1$ (a metà periodo) il master asserisce la linea /REQ (con un ritardo $T_{r1}$). Il master memorizza i dati in corrispondenza del fronte in discesa a metà di $T_6$. Affinché i dati vengano memorizzati correttamente é necessario che siano stabili da un tempo $T_{ds}$. Durante tutta l'operazione lo slave mantiene /RDY ad 1. Nel caso che lo slave sia in grado di rispondere in un tempo piú breve puó accorciare il ciclo asserendo la linea /RDY.

Di quanti cicli di clock puó essere accorciato il ciclo di lettura standard nel caso che:

Esercizio 2   Sia dato un sistema di elaborazione con spazio di indirizzamento per l'I/O pari a 4k. Disegnare lo schema logico della della rete di selezione di un'interfaccia con 4 registri collocati consecutivamente a partire dall'indirizzo esadecimale 4C.

Esercizio 3   Un elaboratore su cui é implementato il meccanismo della paginazione, ha 16 pagine di memoria virtuale ma solo quattro page frames. Inizialmente la memoria (fisica) é vuota. Un programma accede alle pagine virtuali in questo ordine:
0,7,2,7,5,8,9,2,4

3.1   Quali accessi causano un page fault se si usa come strategia di rimpiazzamento l'algoritmo LRU ?

3.2   Quali accessi causano un page fault se si usa come strategia di rimpiazzamento l'algoritmo FIFO ?

In entrambi i casi specificare quali pagine virtuali sono in memoria fisica alla fine degli accessi.

Esercizio 4   Consideriamo un elaboratore con spazio di indirizzamento virtuale a 32 bit e bus dati a 8 bit, per cui sia implementata la paginazione.

4.1   Se la dimensione della pagina ${\cal D}{\textrm{pag}}$ é pari a 16 Kbyte, quante sono le possibili pagine virtuali ?

4.2   Ipotizzando inoltre che la dimensione della memoria fisica ${\cal D}_{\textrm{phys}}$ sia pari a 64Mbyte, quanti bit sono necessari per indicizzare un page frame?

4.3   Calcolare la dimensione della tabella delle pagine, nell'ipotesi che ogni entry occupi 4 byte.

Esercizio 5   Sia dato un sistema con segmentazione su domanda che abbia la seguente tabella dei descrittori di segmento:

Selettore Base Limite P DPL
1 0101100001 1000 1 rw
2 0101100000 1000 0 rx
3 1111000000 1111 1 r
4 1011000010 1111 1 r
... ...

dove il bit P indica se il segmento é presente in memoria fisica, e il campo DPL specifica i diritti di accesso (r $\to$ lettura, w $\to$ scrittura, x $\to$ esecuzione).

Per ciascuno dei seguenti accessi alla memoria virtuale, dire quale indirizzo fisico é calcolato, nel caso non vengano sollevate eccezioni. Se viene sollevata un'eccezione, se ne specifichi il tipo.

  1. Accesso in scrittura all'indirizzo con selettore 1 e offset 0101
  2. Accesso in lettura all'indirizzo con selettore 1 e offset 1010
  3. Salto all'indirizzo con selettore 2 e offset 0010
  4. Accesso in scrittura all'indirizzo con selettore 3 e offset 1010
  5. Accesso in lettura all'indirizzo con selettore 3 e offset 1010
  6. Accesso in lettura all'indirizzo con selettore 4 e offset 1110
  7. Salto all'indirizzo con selettore 4 e offset 1110


next up previous
Next: Soluzioni Up: parte2 Previous: parte2
luca.martini@ing.unipi.it