Informatica Generale Marzia Buscemi buscemidi unipi it Ricevimento
Informatica Generale Marzia Buscemi buscemi@di. unipi. it Ricevimento: Giovedì ore 16. 00 -18. 00, Dipartimento di Informatica, stanza 306 -PS o per posta elettronica Pagina web del corso: http: / /www. di. unipi. it/~buscemi/IG 07. htm (sommario delle lezioni in fondo alla pagina) 1
Le memorie n Cosa vorremmo : n una memoria veloce n abbastanza grande da contenere tutti i dati e i programmi che servono n persistente (o non volatile) cioè capace di mantenere il suo contenuto anche in assenza di alimentazione elettrica n di basso costo 2
Le memorie 2 n Cosa può fare la tecnologia ? n Memorie relativamente piccole e veloci, volatili, a costo medio alto n n RAM : lettura e scrittura nell’ordine delle decine di nanosecondi per parola Memorie grandi, molto capienti (decine di GB), persistenti e lente n n Dischi rigidi : lettura e scrittura nell’ordine di alcuni millisecondi per blocco (qualche KB) Nastri magnetici, CD ROM 3
Le memorie 3 n I computer quindi hanno supporti di memorizzazione di più tipi : n una memoria centrale, tipo RAM (random access memory): contiene i programmi durante la loro esecuzione ed i dati relativi n n altrimenti il processore sarebbe per la maggior parte del tempo fermo in attesa di dati da/per la memoria una o più memorie di massa (dischi etc. ) : che mantengono in modo persistente tutti i dati ed i programmi in attesa di essere eseguiti 4
Le memorie 4 n I computer quindi hanno supporti di memorizzazione di più tipi : dei buffer : memorie “temporanee” utilizzate nei trasferimenti tra dispositivi con velocità diverse (es. si trovano nelle stampanti) n una memoria cache : contiene istruzioni e dati prima che siano utilizzati dal processore n 5
Le memorie 5 n Gerarchia di memorie V O L A T I L I Per sistenti + registri cache Velocità di accesso e costo per bit memoria centrale Dischi rigidi Nastri magnetici, CD ROM - 6
La memoria centrale 7
Struttura di un calcolatore (ancora!) RAM (memoria centrale) Processore bus Linee dati, indirizzi e controllo Interfaccia di I/O schermo dischi mouse modem 8
Struttura di una RAM elettronica Bus indirizzi p r o c e s s o r e 00003 0 1 2 1 0 1 1 0 0 3 4. . . Parola (word): gruppo minimo di bit indirizzabili Indirizzo Dato letto o da scrivere Bus controllo 1 0 1 1 0 0 Bus dati memoria 9
Struttura di una RAM elettronica 2 n Caratteristiche: accesso ai dati in modo diretto e in tempi veloci n volatilità (perdita di informazione in assenza di alimentazione elettrica) n Componenti basilari: n celle o locazioni di memoria, ciascuna delle quali ha un indirizzo. n Il numero di byte indirizzabili è detto spazio di indirizzamento. n 10
Struttura di una RAM elettronica 3 n Una parola (word) costitutita da 2, 4, 8 byte è la più piccola informazione che può essere reperita n Il tempo di accesso è il tempo necessario per leggere un dato n La capacità di una RAM con m parole di n bit è n*m. 11
Struttura di una RAM elettronica 4 n La dimensione massima della RAM è data dalla dimensione della parte indirizzi del bus n al solito con N bit posso indirizzare da 0 a 2 N-1 locazioni n Velocità, ordine decine di nanosecondi n ancora troppo lenta per i processori attuali (1 op elementare al nanosecondo o più) 12
Struttura di una RAM elettronica 5 E allora ? n Si usano memorie velocissime e molto piccole realizzate con tecnologia speciale n Si usa il principio dello scaffale e della scrivania ovvero tengo impilati sulla scrivania i testi che sto consultando per la mia attività corrente n se prendo un nuovo testo dallo scaffale generalmente poi lo poso per un po’ sulla scrivania in attesa che mi serva di nuovo n 13
Memoria cache Memoria piccola e molto veloce Processore Cache RAM 14
Memoria cache 2 Memoria piccola e molto veloce Processore Cache Copia dei dati usati di recente RAM Tutti i dati 15
Memoria cache 2 Algoritmo seguito: n Il dato viene cercato prima nella cache n Se è presente abbiamo finito (cache hit) n Se non è presente (cache miss) si legge in RAM e si mette una copia nella cache n Alcune locazioni successive vengono copiate in memoria cache (schema lookahead) n Per le scritture generalmente si scrive la RAM e si aggiorna la copia se c’è 16
Memoria cache 3 n Località temporale se un programma accede ad una parola al tempo t è molto probabile che alla stessa parola sia acceda di nuovo a breve n Località spaziale se il programma accede all’indirizzo K è molto probabile che anche agli indirizzi vicini sia debba accedere a breve 17
Memoria cache 4 E se devo inserire un nuovo dato e non c’è più posto nella memoria cache? n Questo accade perché le memorie cache sono molto più piccole delle RAM n La soluzione è sovrascrivere una posizione già in uso n Ci sono diverse strategie : di solito si sovrascrive la posizione con dati utilizzati meno di recente (strategia LRU Least Recently Used) applicando il principio di località. 18
Memoria cache 5 n La cache permette migliori prestazioni n es. : in caso di istruzioni sequenziali o cicli che si ripetono molte volte, queste istruzioni sono caricate in memoria cache e si risparmia l’uso dei bus. n La (dynamic) branch prediction eseguita dal processore consiste nel prememorizzare (pre-fetch) le istruzioni del prossimo ciclo 19
Memoria cache 6 n Due tipi di cache: n di primo livello (o interne): all’interno del processore, garantiscono un flusso continuo verso il processore n di secondo livello (o esterne): all’esterno del processore, usate per superare la lentezza della memoria centrale n Nei sistemi multiprocessore, l’uso della cache può creare problemi di coerenza tra i dati in memoria centrale e in cache 20
Le memorie di massa (o secondarie) 21
Memorie di massa n Le memorie centrali: n permettono l’accesso diretto ai dati n sono costose n richiedono alimentazione elettrica costante n. . . invece le memorie di massa: n sono meno costose n possono mantenere informazioni anche in assenza di alimentazione n danno un accesso più lento ai dati e il tempo di accesso è variabile in base alla posizione fisica del dato (natura meccanica delle memorie di massa) 22
Memoria di massa 2 n Esistono tre tipi di tecnologie possibili per la memorizzazione dei dati: n Magnetica n n n Ottica n n dischi magnetici (hard disk e floppy disk) nastri magnetici CD-ROM, DVD Flash n in macchine fotografiche digitali e chiavi USB 23
Memoria magnetica n Sfrutta il fenomeno della polarizzazione: sul supporto ci sono delle particelle magnetiche n i due diversi tipi di magnetizzazione corrispondono alle unità elementari di informazione (0 e 1) n la testina di lettura/scrittura cambia la polarizzazione n 24
Dischi magnetici Testine (una per superfice) Cilindro 1 Superfici Braccio (direzioni movimento) Traccia 0 Struttura di un disco rigido 25
Dischi magnetici 2 settore ciascuna superficie è suddivisa in “fette”, dette settori, separate tra loro da zone non usate traccia Ogni superficie è divisa in tracce concentriche (una per ogni possibile posizione della testina) La formattazione è l’operazione che suddivide il disco in tracce e settori. 26
Dischi magnetici 3 n L’informazione registrata sul disco è identificabile attraverso: il numero di cilindro n il numero di traccia in tale cilindro n il numero di settore di tale traccia n n Le operazioni di lettura/scrittura vengono effettuate per interi settori, cioè lungo tutto l’arco di una traccia compresa in uno o più settori 27
Struttura di un settore di una traccia preambolo dati ECC Codici correttori di errore : dati in più per accorgersi se la lettura è andata bene Permette alla testina di capire che sta iniziando un nuovo settore, fornisce il numero del settore etc 28
Prestazioni dei dischi magnetici n Parametri per valutare le prestazioni: n tempo di posizionamento (della testina su una certa traccia) n tempo di latenza (tempo necessario affinché il settore giunga in corrispondenza della testina) n tempo di trasmissione (del blocco) n tempo di accesso: tempo di posizionamento + tempo di latenza n data transfer rate: velocità del flusso dei dati in lettura/scrittura (misurato in kbit/s o Mbit/s) tra disco e processore 29
Tipi di dischi magnetici n Hard Disk n E’ un disco magnetico sempre presente in un calcolatore n I piatti dell’HD sono racchiusi in contenitori sigillati n Le testine di lettura/scrittura “volano” molto vicino alla superficie del disco n Floppy Disk n Un unico disco circondato da un involucro di plastica (diametro: 3, 5 pollici, 80 tracce, 18 settori) n È stato rimpiazzato da altre tecnologie perché ha poca capacità (in genere 1, 44 MB) 30
- Slides: 30