vuoi
o PayPal
tutte le volte che vuoi
La memoria centrale
Ogni cella è caratterizzata da:
- Indirizzo, un numero che identifica la cella e ne consente l'accesso
- Valore, la sequenza di bit memorizzata in essa
La memoria fornisce le operazioni di:
- Lettura, consultazione del valore di una cella con un dato indirizzo
- Scrittura, modifica del valore di una cella con un dato indirizzo
Le operazioni avvengono sotto il controllo della CPU: essa seleziona una particolare cella di memoria ponendone l'indirizzo nel registro indirizzi, il MAR. Se esso è costituito da N bit, si possono indirizzare 2^N celle di memoria, da 0 a (2^N)-1.
Operazione di lettura: copia nel registro dati MDR il contenuto della cella di memoria indirizzata dal registro indirizzi MAR.
Operazione di scrittura: copia il contenuto del MDR nella cella di memoria indirizzata dal MAR.
La memoria RAM (random access memory) può essere acceduta sia in lettura che in scrittura ed è volatile: i dati memorizzati vengono persi allo
spegnimento del calcolatore
Memoria ROM (read only memory) è persistente: mantiene il contenuto anche senza alimentazione e permette solo la lettura dei dati.
LA LEGGE DI MOORE: Ogni 18 mesi la velocità dei processori e il numero di componenti interni viene raddoppiato. Si va quindi verso la miniaturizzazione delle componenti; se esse sono più piccole, ne posso inserire in quantità maggiore, aumentando così la velocità del sistema.
ARCHITETTURA DI UN CALCOLATORE
MEMORIZZAZIONE: L'unità responsabile delle memorizzazione è la memoria: essa è organizzata in celle, ad ognuna delle quali è associato un indirizzo che la identifica; ogni cella è in grado di memorizzare un singolo dato o una singola istruzione.
Un calcolatore memorizza i dati, che rappresentano le informazioni di interesse, e i programmi per l'elaborazione dei dati. Fornisce due sole operazioni: memorizzazione di un valore in una cella (scrittura)
accesso al valore memorizzato in una cella (lettura)
ORGANIZZAZIONE DELLE MEMORIE:
La memoria ideale dovrebbe essere a capacità infinita, tempo di accesso nullo e con costo e consumo nulli. Nei casi reali, l'organizzazione del calcolatore comprende diversi tipi di memorie con caratteristiche diverse:
- alcune memorie sono dedicate, ossia sono progettate per contenere specifici tipi di dati, come la EPROM;
- altre memorie sono general-purpose e possono essere accedute mediante specifici metodi di indirizzamento per leggere o scrivere dati di ogni tipo. Il loro impiego dipende dalle loro caratteristiche e da come il dato viene impiegato durante il funzionamento di un calcolatore.
Gerarchie di memorie: La memoria del calcolatore è organizzata gerarchicamente in modo da comprendere poche memorie a bassa capacità ed alti costi ma molto veloci e molta memoria più lenta e di capacità maggiore.
Nella gerarchia di memoria i dati sono temporaneamente trasferiti
in memorie semprepiù veloci. L’obiettivo è di organizzare le politiche di piazzamento e accesso dei dati inmodo da avere i dati più frequentemente usati, o in generale più “utili” virtualmente,sempre nelle memorie più veloci.
LOCALITA’ SPAZIALE E TEMPORALE:
Regola base dell’efficienza è rendere di massima velocità il caso più frequente, perraggiungere questo obiettivo, si sfrutta la località spaziale e temporale.
Principio di località: un programma in ogni istante utilizza una porzione limitata dellospazio di indirizzamento.
Località spaziale: accedendo ad un dato, è assai probabile che si debba accedere ad altri dati localizzati “vicino” nello spazio di indirizzamento.
Località virtuale: accedendo a un dato, è assai probabile che si debba riaccedere ad esso in un tempo “vicino”.
I dati che inizialmente si trovano ad un livello
più basso: conviene spostarli in memorie più veloci località temporale• conveine spostare anche i dati vicini località spaziale• I programmi non vedono la gerarchia ma referenziano i dati come se fossero sempre in memoria centrale perciò bisogna mantenere il più vicino possibile alla CPU i dati usati più recentemente. La gerarchia delle memorie deve prevedere in successione memorie sempre più larghe e più lente per mantenere i dati nei livelli più alti proporzionalmente alla previsione della frequenza d’uso.
GERARCHIA DI MEMORIA: PIU’ LIVELLI
blocco: unità di informazione minima scambiata fra livelli (es: 32 bytes)• hit: un accesso alla memoria che trova l’informazione cercata nel livello superiore• hit rate: frequenza di accessi trovati nel livello superiore (h). Più hit rate ci sono e più è veloce l’esecuzione del programma.• miss rate: (1-h) caso di
Sono piccole ma veloci unità di memoria all'interno del processore. Sono utilizzati per immagazzinare temporaneamente dati e istruzioni durante l'esecuzione di un programma. I registri sono accessibili in modo molto rapido, il che li rende ideali per l'esecuzione di operazioni aritmetiche e logiche.con la memoria cache prima di accedere alla memoria principale. Se i dati richiesti sono presenti nella cache, il processore li recupera direttamente dalla cache, risparmiando tempo. Se i dati non sono presenti nella cache, il processore accede alla memoria principale per recuperarli e li memorizza nella cache per un accesso futuro più veloce. La memoria cache è divisa in diverse linee o blocchi, ognuno dei quali può memorizzare una porzione di dati dalla memoria principale. Ogni linea di cache ha anche un tag che indica l'indirizzo di memoria corrispondente ai dati memorizzati nella linea. Quando il processore richiede un dato, controlla il tag per vedere se il dato è presente nella cache. Se il tag corrisponde, il dato viene recuperato dalla cache. Se il tag non corrisponde, si verifica un'operazione chiamata "cache miss" e il processore deve accedere alla memoria principale per recuperare il dato richiesto. La memoria cache è fondamentale per migliorare le prestazioni del sistema, poiché riduce il tempo di accesso alla memoria principale. Tuttavia, la dimensione della cache è limitata e quindi può memorizzare solo una piccola quantità di dati. Pertanto, è importante che i dati più frequentemente utilizzati siano presenti nella cache per massimizzare l'efficienza del sistema. In conclusione, i registri e la memoria cache sono componenti cruciali della CPU che contribuiscono a migliorare le prestazioni del sistema. I registri forniscono una memoria temporanea per l'elaborazione dei dati, mentre la memoria cache memorizza i dati più frequentemente utilizzati per ridurre il tempo di accesso alla memoria principale.direttamente con la cache. Quando il processore richiede una cella non presente nella cache (miss), la cella viene trasferita dalla memoria nella cache. Occorre definire dei meccanismi per:- Conoscere se un dato è nella cache.
- Nel caso in cui il dato sia presente, conoscere la sua posizione ed accedervi.
valore è la sequenza di bit memorizzata nella cella. La memoria fornisce operazioni di Lettura e Scrittura: la prima permette la consultazione del valore di una cella a partire da un dato indirizzo, la seconda permette la modifica del valore di una cella a partire da un dato indirizzo.
MEMORIE RAM E ROM:
Le memorie RAM (random access memory): possono essere accedute sia in lettura che in scrittura e sono volatili. I dati memorizzati vengono persi allo spegnimento del calcolatore.
Le memorie ROM (read only memory): sono persistenti. Mantengono il contenuto anche senza alimentazione e permettono solo la lettura dei dati (o programmi). Memorizzano alcuni programmi di sistema (firmware).
Quando accendo un calcolatore, do il comando di avviare il sistema: viene attivato un circuito che va in un punto preciso del BIOS (sta nella scheda madre), prende la prima istruzione del BIOS e la mette in memoria. Questa prima istruzione è l'avvio del sistema operativo (quando esce).
La schermata di Windows, ad esempio). Allospegnimento della macchina, ciò che sta nel BIOS, resta nel BIOS.
RAM è la memoria in cui sono caricati i dati che devono essere utilizzati dalcalcolatore per elaborare (Memoria Principale). Il processore identifica le celledella RAM tramite indirizzi assegnati che ne specificano la posizione (la memoriasi rappresenta come una stringa ordinata di elementi detti celle o parole). Iltempo di accesso alle celle della memoria è costante.
ROM è una memoria permanente presente sulla scheda madre, che contiene ilBIOS (Basic I/O System), cioè le istruzioni che la CPU deve caricare per consentirel’avvio del sistema.
MEMORIA SECONDARIA (o DI MASSA):In un calcolatore esistono diverse memorie secondarie (o memorie di massa) chehanno le seguenti caratteristiche: alta capacità, bassi costi, non volatili.
1= Hard Disk: tanti dischi uno sull’altro, a distanza molto ravvicinata, e ogni disco hauna testina. Le
Testine planano sul disco senza toccarlo e leggono il disco magneticamente.
2. Floppy Disk: ha un funzionamento uguale all'Hard Disk.
3. SD
4. USB
5. disco ottico (cd ROM)
Tutto è iniziato con i nastri magnetici (lettura e scrittura sequenziale). I dischi magnetici consentono l'accesso diretto ai dati.
NASTRI MAGNETICI:
Primi dispositivi di memoria di massa impiegati storicamente
Notevoli analogie con i comuni nastri impiegati nelle audio cassette (ma informazioni registrate in formato digitale)
Accesso sequenziale
Molto lenti
Utili per operazioni di backup
DISCHI MAGNETICI:
Piatti d'alluminio ricoperti di materiale ferromagnetico.
Testina di un disco sospesa appena sopra la superficie magnetica
Scrittura: il passaggio di co