Il 0% ha trovato utile questo documento (0 voti)
3 visualizzazioni18 pagine

Cap 14

Il capitolo descrive la struttura delle memorie di massa, in particolare i dischi rigidi e la loro mappatura in blocchi logici. Viene analizzata la schedulazione degli accessi al disco, evidenziando vari algoritmi come FCFS, SSTF, SCAN, C-SCAN e C-LOOK, e si discute l'amministrazione del disco e la gestione dello spazio di swap. Infine, si sottolinea l'importanza di una buona gestione delle richieste di I/O per ottimizzare le prestazioni del sistema operativo.
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
3 visualizzazioni18 pagine

Cap 14

Il capitolo descrive la struttura delle memorie di massa, in particolare i dischi rigidi e la loro mappatura in blocchi logici. Viene analizzata la schedulazione degli accessi al disco, evidenziando vari algoritmi come FCFS, SSTF, SCAN, C-SCAN e C-LOOK, e si discute l'amministrazione del disco e la gestione dello spazio di swap. Infine, si sottolinea l'importanza di una buona gestione delle richieste di I/O per ottimizzare le prestazioni del sistema operativo.
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato PDF, TXT o leggi online su Scribd

Capitolo 14: Struttura delle

memorie di massa
Struttura dei dischi.
Schedulazione degli accessi al disco.
Amministrazione del disco.
Gestione dello spazio di swap.

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 1 of 18
Struttura dei dischi

I dischi rigidi sono indirizzati come grandi array


monodimensionali di blocchi logici, dove il blocco logico è la più
piccola unità di dati trasferibile in lettura o scrittura.

L’array monodimensionale di blocchi logici viene mappato nei


settori del disco in modo sequenziale.
Il settore 0 è il primo settore della prima traccia sul cilindro più
esterno.
Utilizzando questa mappatura, possiamo convertire un numero di
blocco logico in un indirizzo fisico nel disco, che consiste in un
numero di cilindro, un numero di traccia all’interno di quel cilindro e
un numero di settore all’interno della traccia.

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 2 of 18
Schedulazione degli accessi al
disco
Una delle responsabilità del sistema operativo è di usare
l’hardware in modo efficiente. Per le unità a disco, ciò si traduce
nella necessità di avere un rapido tempo di accesso e una buona
larghezza di banda.
Il tempo di accesso ha due componenti principali:
Il tempo di ricerca (seek time) è il tempo che impiega il braccio del
disco a muovere le testine fino al cilindro contenente il settore
desiderato.
La latenza di rotazione (rotational latency) è il tempo aggiuntivo
speso in attesa che il disco faccia ruotare il settore desiderato fino
alla testina di lettura.
Minimizzare il tempo di ricerca.
Tempo di ricerca  distanza di ricerca.
La larghezza di banda (bandwith) del disco è data dal numero
totale di byte trasferiti diviso per il tempo totale che intercorre fra
la richiesta di servizio e il completamento dell’ultimo
trasferimento.
Prof. Ing. Michele Ruta
Sistemi Operativi/Informatica per l’Automazione I 3 of 18
Schedulazione degli accessi al
disco (Cont.)
Several algorithms exist to schedule the servicing of disk I/O
requests.
Illustriamoli con una coda di richiesta (0-199).

98, 183, 37, 122, 14, 124, 65, 67

Testina 53

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 4 of 18
FCFS
L’iIlustrazione mostra il movimento totale della testina a 640 cilindri.

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 5 of 18
SSTF

Seleziona la richiesta con il minimo tempo di ricerca per la


posizione corrente della testina.
La schedulazione SSTF è essenzialmente una forma di
schedulazione SJF e può causare la starvation di alcune
richieste.
L’iIlustrazione mostra il movimento totale della testina a 640
cilindri.

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 6 of 18
SSTF (Cont.)

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 7 of 18
Schedulazione SCAN

Il braccio del disco parte da un estremo del disco e si muove


verso l’altro estremo servendo le richieste man mano che
raggiunge ogni cilindro, finchè non arriva all’altro estremo del
disco.
Talvolta chiamato algoritmo dell’ascensore.
L’iIlustrazione mostra il movimento totale della testina a 208
cilindri.

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 8 of 18
Schedulazione SCAN (Cont.)

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 9 of 18
Schedulazione C-SCAN

Progettata per fornire un tempo di attesa più uniforme della


SCAN.
La testina si muove da un capo all’altro del disco, servendo le
richieste lungo il percorso. Quando la testina raggiunge l’altro
capo ritorna direttamente all’inizio del disco, senza servire alcuna
richiesta durante il ritorno.
Tratta i cilindri come una lista circolare che si riavvolge dal
cilindro finale al primo.

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 10 of 18
Schedulazione C-SCAN (Cont.)

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 11 of 18
Schedulazione C-LOOK

Versione di C-SCAN.
Il braccio arriva al massimo laddove è presente la richiesta finale,
per ciascuna delle due direzioni. Lì inverte immediatamente la
propria direzione, senza percorrere tutta la strada sino
all’estremità del disco.

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 12 of 18
Schedulazione C-LOOK (Cont.)

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 13 of 18
Selezione dell’algoritmo di
schedulazione del disco
SSTF è comune ed è molto naturale perchè aumenta le
prestazioni rispetto al FCFS.
Lo SCAN ed il C-SCAN danno migliori risultati per i sistemi che
pongono un carico pesante sul disco.
Le prestazioni dipendono dal numero e dai tipi di richieste.
Le richieste per servizio su disco possono essere notevolmente
influenzate dal metodo di allocazione.
A causa di queste complessità la procedura di schedulazione del
disco dovrebbe essere scritta come modulo separato del
sistema operativo in modo da poter essere sostituita con una
procedura differente.
Sia l’SSTF sia il LOOK sono una scelta ragionevole come
algoritmo predefinito.

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 14 of 18
Amministrazione del disco

Formattazione a basso livello, o formattazione fisica — Divide il


disco in settori che il controller del disco può leggere e scrivere.
Per memorizzare i file sul disco, il sistema operativo ha bisogno
di registrare su disco le proprie strutture dati.
Partizionare il disco in uno o più gruppi di cilindri.
Formattazione logica, che provvede alla creazione di un file system.
Il disco di boot (boot disk) inizializza il sistema.
Il bootstrap è immagazzinato nella ROM.
Caricatore di bootstrap.
Metodi come il ricambio dei sttori guasti (sector sparing) sono
usati per gestire i blocchi difettosi.

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 15 of 18
Gestione dello spazio di swap
Spazio di swap — La memoria virtuale usa lo spazio su disco
come estensione della memoria centrale.
Lo spazio di swap può risiedere in due posti: può essere ricavato
dal normale file system, o può essere in una partizione separata
del disco.
Gestione dello spazio di swap.
In BSD 4.3, lo spazio di swap è assegnato a un processo quando
questo viene avviato. Viene allocato uno spazio sufficiente a
memorizzare il programma, noto come pagine di testo o segmento
testo, e il segmento dati del processo.
Per tenere traccia dell’uso dello spazio di swap sono usate dal
kernel due mappe di swap per processo.
Solaris 2 assegna lo spazio di swap solo quando una pagina viene
scaricata dalla memoria fisica, piuttosto che quando la pagina di
memoria virtuale viene creata per la prima volta.

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 16 of 18
La mappa di swap di un segmento
testo in BSD 4.3

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 17 of 18
La mappa di swap di un segmento
dati in BSD

Prof. Ing. Michele Ruta


Sistemi Operativi/Informatica per l’Automazione I 18 of 18

Potrebbero piacerti anche