Caratteristiche generali:
Due tipi di pagine:
L’algoritmo di paginazione è una variante del FIFO seconda chance:
Quando i frame iniziano a scarseggiare si eliminano le pagine meno utilizzate:
kswapd è il demone del kernel che:
Una pagina non può essere eliminata immediatamente se:
Ogni particolare file system determina come sono memorizzati i file:
Il kernel di Linux supporta oltre 40 file systems:
Problema
Come e’ possibile gestire piu’ file system contemporaneamente?
Il VFS rappresenta tutti i file e le directory del system come un singolo albero.
Il VFS usa degli oggetti chiamati inode per accedere ai file e le directory dei vari file system.
Gli inode contengono informazioni sul:
Contiene informazioni sui file system montati:
Creato quando il VFS è montato ed è residente in memoria centrale.
Principale FS dei sistemi Linux.
Obiettivi: performance e robustezza.
Basato su inode e directory (UNIX-like).
Nuove funzionalità rispetto a BSD file system (es. recupero file).
Dimensione dei blocchi: 1KB (tipica), 2KB, 4KB o 8 KB.
5% dei blocchi riservati all’amministratore.
Ext2fs è un file system per la memorizzazione permanente di dati sul disco.
File system Proc:
Poiché il file system ext2 cerca di memorizzare i dati di un file in blocchi contigui, il kernel prova a fondere richieste a blocchi adiacenti in un’unica richiesta.
P1 deve scrivere 200 MB di dati (circa 200000 blocchi da 1KB).
P2 deve visualizzare sul terminale il contenuto di un file (lettura dal disco e scrittura sul terminale).
Oltre all’algoritmo LOOK, il kernel utilizza un algoritmo per deadline per prevenire la read starvation:
Esempio:
↓
Dopo 30 richieste per il processo P1 si passa alle richieste di P2
Dispositivi e kernel interagiscono attraverso le interruzioni:
Per migliorare l’efficienza il kernel divide il codice delle routine di servizio in due parti:
↓
La metà superiore può prelazionare quella inferiore ma non viceversa
2. Lo stallo dei processi – parte prima
3. Lo stallo dei processi – parte seconda
4. Lo stallo dei processi – parte terza
6. Il S.O. Linux – parte prima
7. Il S.O. Linux – parte seconda
8. Il S.O. Windows – parte prima
9. Il S.O. Windows – parte seconda
10. Il S.O. Windows – parte terza
11. I S.O. multimediali – parte prima
12. I S.O. multimediali – parte seconda
13. I S.O. multimediali – parte terza
14. I Sistemi Operativi distribuiti - parte prima
15. I Sistemi Operativi distribuiti - parte seconda
16. I Sistemi Operativi distribuiti - parte terza
17. I Sistemi Operativi distribuiti - parte quarta
18. I Sistemi Operativi distribuiti - parte quinta
19. I Sistemi Operativi distribuiti - parte sesta
Silberschatz , Galvin, Gagne – Sistemi Operativi 8a ed. Capitolo 21
Tanenbaum – Moderni sistemi operativi 3a ed. Capitolo 10
Deitel, Deitel, Choffnes - Sistemi operativi 3a ed. Capitolo 16
2. Lo stallo dei processi – parte prima
3. Lo stallo dei processi – parte seconda
4. Lo stallo dei processi – parte terza
6. Il S.O. Linux – parte prima
7. Il S.O. Linux – parte seconda
8. Il S.O. Windows – parte prima
9. Il S.O. Windows – parte seconda
10. Il S.O. Windows – parte terza
11. I S.O. multimediali – parte prima
12. I S.O. multimediali – parte seconda
13. I S.O. multimediali – parte terza
14. I Sistemi Operativi distribuiti - parte prima
17. I Sistemi Operativi distribuiti - parte quarta
18. I Sistemi Operativi distribuiti - parte quinta
19. I Sistemi Operativi distribuiti - parte sesta
I podcast del corso sono disponibili anche su iTunesU e tramite Feed RSS.