Memoria esterna - dischi, RAID e memorie ottiche
In questa pagina 7
In questa pagina 5
Disco magnetico
- Piatti rotanti ricoperti di materiale magnetico; ogni piatto ha due facce, ognuna con una testina di lettura/scrittura montata su un braccio. Le testine sono tutte sullo stesso braccio e si muovono insieme. Nella tecnologia Winchester la testina "vola" a pochissima distanza dalla superficie, senza toccarla, in un contenitore sigillato.
- Ogni faccia è divisa in tracce concentriche, ogni traccia in settori (unità minima di lettura/scrittura, tipicamente 512 byte o 4 KB). La formattazione aggiunge a ogni settore intestazione, sincronizzazione e codici di controllo.
- Cilindro: l'insieme delle tracce nella stessa posizione su tutte le facce. Dati su un cilindro si leggono senza spostare il braccio, e con le testine in parallelo.
Capacità = facce × tracce per faccia × settori per traccia × byte per settore.
Tempo di accesso
- Posizionamento (seek): portare la testina sulla traccia; dato del disco (valore medio).
- Latenza rotazionale: attesa che il settore passi sotto la testina; in media mezzo giro:
- Trasferimento di byte su una traccia di byte (frazione di giro):
Esempio: 7200 giri/min → s ms, latenza ms. Con tracce da 256 KB, trasferire 64 KB richiede ms. Con seek 8,5 ms: ms. Se gli stessi dati sono distribuiti su un cilindro di 8 facce lette in parallelo, il trasferimento si divide per 8: ms. Svolto in Esercizio 17 · tempo di accesso su traccia e su cilindro a 7200 giri.
Il posizionamento e la latenza dominano: leggere dati contigui è molto più efficiente che leggerli sparsi.
Scheduling delle richieste
Con più richieste in coda, l'ordine in cui servirle cambia lo spostamento totale del braccio.
| Algoritmo | Regola | Caratteristiche |
|---|---|---|
| FCFS (FIFO) | ordine di arrivo | equo, spesso il più lento |
| SSTF (shortest seek time first) | la richiesta più vicina al cilindro attuale | spostamento minimo, ma può far attendere a lungo le richieste lontane e fa molte inversioni |
| ascensore (SCAN) | continua nella direzione corrente servendo le richieste che incontra, inverte quando non ce ne sono più | poche inversioni del braccio (meno usura meccanica), buone prestazioni |
Esempio numerico in Esercizio 14 · algoritmi di scheduling del disco.
RAID
Redundant Array of Independent Disks: più dischi visti dal sistema operativo come uno solo, per prestazioni (accessi paralleli) e affidabilità (ridondanza).
| Livello | Organizzazione | Dischi per di dati | Guasti tollerati |
|---|---|---|---|
| 0 | striping: strisce distribuite a rotazione sui dischi, nessuna ridondanza | 0 (un guasto perde tutto) | |
| 1 | mirroring: ogni disco ha una copia | 1 per coppia | |
| 2 | striping a bit, codice di Hamming su dischi dedicati, dischi sincronizzati | + dischi di controllo | 1 |
| 3 | striping a byte, un disco di parità | 1 | |
| 4 | striping a blocchi, disco di parità dedicato (collo di bottiglia in scrittura) | 1 | |
| 5 | come il 4 ma con la parità distribuita su tutti i dischi | 1 | |
| 6 | due calcoli di ridondanza indipendenti distribuiti | 2 |
La parità permette la ricostruzione: se un disco si guasta, ogni suo blocco è lo XOR dei blocchi corrispondenti degli altri dischi.
SSD
Memoria flash (vedi Memoria principale a semiconduttoreCella di memoria e operazioni; RAM dinamica (condensatore, refresh) e statica (flip-flop), confronto; ROM, PROM, EPROM, EEPROM e flash; organizzazione dei chip e dei moduli con calcolo di linee di indirizzo e numero di chip; DRAM sincrona e DDR; errori e codici di correzione.Memoria principale a semiconduttore →): nessuna parte meccanica, quindi niente posizionamento né latenza rotazionale; accesso in decine di µs. Le celle sopportano un numero limitato di cancellazioni: il controllore distribuisce le scritture (wear leveling).
Memorie ottiche e nastri
- CD-ROM: una sola traccia a spirale; i dati sono incisi come pit (avvallamenti) e land (zone piane) e letti da un laser dalla variazione della luce riflessa; velocità lineare costante (il disco gira più piano verso l'esterno); circa 650–700 MB. CD-R scrivibili una volta, CD-RW riscrivibili.
- DVD: laser a lunghezza d'onda minore, tracce più fitte, più strati e due facce: da 4,7 a 17 GB. Blu-ray: fino a 25 GB per strato.
- Nastro magnetico: accesso sequenziale, costo per bit bassissimo; usato per archivi e backup.
Errori tipici
- Usare il tempo di un giro intero come latenza: la latenza media è mezzo giro.
- Dimenticare di convertire i giri al minuto in giri al secondo (diviso 60).
- Usare invece di per i GB nei conti sulle tracce: negli esercizi le capacità sono potenze di 2.
Versione ripasso
Disco magnetico
Piatti con due facce, una testina per faccia (stesso braccio); tracce divise in settori; cilindro = tracce nella stessa posizione di tutte le facce, leggibile senza muovere il braccio e con testine in parallelo. Capacità = facce tracce settori byte per settore.
Tempo di accesso
7200 giri/min: ms, latenza ms; 64 KB su tracce da 256 KB: ms; con seek 8,5 ms ms; su un cilindro di 8 facce il trasferimento si divide per 8: ms (Esercizio 17 · tempo di accesso su traccia e su cilindro a 7200 giri).
Scheduling (Esercizio 14 · algoritmi di scheduling del disco)
FCFS (ordine di arrivo); SSTF (la più vicina, ma starvationle richieste lontane possono attendere a lungo); ascensore (una direzione per volta, poche inversioni).
RAID
0 striping, nessuna ridondanza; 1 mirroring ( dischi); 2 striping a bit con Hamming; 3 striping a byte con disco di parità (); 4 a blocchi, parità dedicata (collo di bottiglia in scrittura); 5 parità distribuita; 6 doppia ridondanza (, tollera 2 guasti). La parità ricostruisce un disco guasto con lo XOR degli altri.
SSD, ottiche, nastri
SSD: flash (Memoria principale a semiconduttoreCella di memoria e operazioni; RAM dinamica (condensatore, refresh) e statica (flip-flop), confronto; ROM, PROM, EPROM, EEPROM e flash; organizzazione dei chip e dei moduli con calcolo di linee di indirizzo e numero di chip; DRAM sincrona e DDR; errori e codici di correzione.Memoria principale a semiconduttore →), niente seek né latenza, wear leveling. CD-ROM: spirale di pit e land, circa 650-700 MB; DVD 4,7-17 GB; Blu-ray 25 GB per strato. Nastro: accesso sequenziale, backup.
Errori tipici: latenza = giro intero (è mezzo giro); giri/min non convertiti in giri/s; invece di per i GB negli esercizi.
Esercizi su questo argomento
- Esercizio 13 · capacità di un disco dal tempo di accesso
- Esercizio 14 · algoritmi di scheduling del disco
- Esercizio 15 · tempo di accesso su traccia e su cilindro per un disco da 512 GB
- Esercizio 16 · byte trasferiti da un disco da 128 GB
- Esercizio 17 · tempo di accesso su traccia e su cilindro a 7200 giri