Corso di Laurea in Informatica Applicata – La Spezia

18 Maggio  2004

Sistemi Operativi – Seconda  prova intermedia

 


1

a)      Cosa sono i file di meta-data della Master File Table ?

b)      Come viene tenuta traccia dei bad block in NTFS ?

c)      Che dimensione hanno i record della Master File Table di NTFS  e come viene organizzato un record della  Master File Table per files di lunghezza maggiore di tale dimensione ?

 

2. Descrivere l'algoritmo di sostituzione di pagine di  Unix.

 

3: Sia data la seguente tabella delle pagine di un processo:

 

Pagine virtuali

Pagine fisiche

bit di presenza

Tempo di arrivo

 

0

3

1

100

1

-

0

-

2

0

1

50

3

2

1

200

4

-

0

-

5

1

1

150

6

4

1

130

7

-

0

-

 

Si supponga che in memoria siano presenti solo le pagine del processo considerato, che però non possono essere interamente contenute in memoria.

Dire quanti page fault provoca la stringa di riferimenti alle pagine 0,1,7,3,4,5,0,1 se la strategia di rimpiazzamento delle pagine è FIFO, nell'ipotesi che ad ogni page fault sia necessario scaricare una pagina del processo dalla memoria per caricarne una nuova. Giustificare il risultato.

 

4. Si consideri un file formato da 100 record e le sue possibili allocazioni su disco: di tipo contiguo, a lista concatenata e con tabella indice (I-node) con soli blocchi indiretti singoli. In ognuno di questi casi i record sono memorizzati 5 per blocco (tutto l'I-node e' invece memorizzato su un solo blocco). Si supponga che le informazioni che riguardano il file siano gia' presenti nella memoria centrale. Si dica quanti accessi a disco sono necessari in ognuna di queste allocazioni per

a)      Aggiungere un record (costruito in memoria centrale)  all'inizio del file

b)      Aggiungere un record (costruito in memoria centrale)  a meta' del file

c)      Aggiungere un record (costruito in memoria centrale)  alla fine del file

d)      Leggere il record numero 18

 

Giustificare i risultati.

 

Nota: nel caso di allocazione contigua si supponga che il blocco contiguo all'ultimo blocco del file sia libero.

 

 

5. Considerare il caso di scrittura di una stringa sulla stampante (senza spooling) usando I/O gestito con DMA attraverso chiamata di sistema bloccante.  Scrivere il codice eseguito in seguito alla chiamata di sistema di stampa e la corrispondente procedura di servizio all’interrupt  (usare pseudo-C o altro meta-linquaggio) e commentarli.


6. Descrivere l'algoritmo sostituzione di pagine basato sul Working Set con orologio (WSClock).

7.
a) Con quali criteri vengono suddivise  le pagine fisiche disponibili in un sistema tra i processi?
b) Qual'e' il criterio generale per ottenere un controllo ottimale del carico in un sistema ?

8. Spiegare cosa si intende per link simbolico e  per link hard, e discutere pregi e difetti delle due tecniche.

9. Cos'e' la  tecnica di double buffering (doppio buffering) utilizata nei driver di periferica? Illustrare la sua utilita'.

10. Illustrare i principali metodi per la gestione degli errori (bad block) nei dischi.