Memoria (informatica): differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
→L'operazione di lettura: errore grammaticale |
Etichette: Modifica da mobile Modifica da web per mobile |
||
(72 versioni intermedie di 44 utenti non mostrate) | |||
Riga 1:
{{F|
La '''memoria''', in [[informatica]], è un elemento di un [[computer]] o di un suo sottosistema e ha il compito di garantire la [[persistenza (informatica)|persistenza]] dei [[dato (informatica)|dati]] e\o delle [[istruzione (informatica)|istruzioni]] dei [[programma (informatica)|programmi]]<ref>{{Cita web|url=https://www.treccani.it/enciclopedia/memoria_(Enciclopedia-della-Matematica)|titolo=memoria in "Enciclopedia della Matematica"|sito=www.treccani.it|lingua=it-IT|accesso=2022-07-19}}</ref>. Esistono diversi tipi di memoria e la loro realizzazione fisica dà vita ai vari [[Supporto di memoria|supporti di memorizzazione]] esistenti.
==Caratteristiche==▼
▲== Caratteristiche ==
=== Descrizione generale ===
{{vedi anche|Indirizzo di memoria}}
La memorizzazione di informazioni in memoria e il loro successivo recupero sono funzioni fondamentali nei processi di [[elaborazione dati|elaborazione dei dati]]. La capacità dei supporti di memoria elettronici di immagazzinare grandi quantità di dati in poco spazio e la velocità con cui è possibile prelevare un'informazione fa parte delle motivazioni chiave per lo sviluppo dell'elettronica, portando per esempio alla nascita dei [[Base di dati|database]] moderni. È anche possibile inserire ed eliminare [[Programma (informatica)|programmi]] da una stessa memoria. Ciò fa sì che un computer possa teoricamente eseguire infiniti programmi nell'arco della sua esistenza, rendendo possibile una [[macchina di Turing]] con una memoria di capienza finita.
Una memoria può essere considerata astrattamente come una sequenza finita di celle in cui ogni cella contiene una sequenza finita di [[bit]], normalmente gestiti a gruppi di otto detti [[byte]]. Pertanto lo spazio fisico della memoria può essere immaginato come una sequenza di posizioni, ognuna contenente un byte. Ogni posizione è individuata da un preciso [[indirizzo di memoria]], normalmente espresso tramite un numero intero positivo. Ad oggi
=== Astrazione di von Neumann ===
{{
[[File:Von_Neumann.gif
=== Operazioni ===
* ''Inizializzazione''. È il trattamento che subisce la memoria prima dell'uso normale. Alcuni tipi di memoria (per esempio la [[RAM]] elettronica) non hanno bisogno di inizializzazione; per tali memorie, il contenuto iniziale è impredicibile. Per le memorie a sola lettura, l'inizializzazione consiste nella scrittura dei dati effettuata in fase di produzione. Per i dischi magnetici, l'inizializzazione consiste nella scrittura di dati che costituiscono un casellario in cui porre le informazioni utili (la cosiddetta ''[[formattazione]]'').
* ''Scrittura''. È l'operazione di memorizzazione delle informazioni. Un esempio di scrittura è assegnare il [[byte]] 123 alla cella di indirizzo 1000.
* ''Lettura''. È l'operazione di recupero di informazioni memorizzate. Un esempio di lettura è chiedere alla memoria il contenuto della cella di indirizzo 1000. Si accede inoltre alla memoria e ai suoi contenuti ogni qual volta l'Unità di Controllo (''Control Unit'') del Processore richiede dati utili su cui eseguire un'operazione di elaborazione. Tutto ciò avviene grazie alle procedure di indirizzamento gestite dall'[[Architettura di un processore basato su registri generali|Address Logic]], sottosistema del processore.
Per parlare indifferentemente di lettura o di scrittura, si usa il termine ''accesso''. Per esempio, per indicare che una memoria è veloce sia in lettura che in scrittura, si dice che ha un basso ''tempo di accesso''.
== Classificazione ==
Riga 33 ⟶ 35:
* tecnologia (elettronica, magnetica, ottica, magneto-ottica).
Nell'[[architettura dei calcolatori]], si distinguono due tipi di memoria: la [[memoria primaria]], che lavora a più diretto contatto con il [[processore]], costituita fondamentalmente da [[RAM|memoria RAM]], [[Read Only Memory|memoria ROM]], [[Cache|memoria Cache]], e la memoria secondaria di cui maggiori rappresentanti sono gli [[hard disk]], ma anche supporti rimovibili come dischi [[floppy]], [[Compact disc|CD]], [[DVD]], [[nastro magnetico|nastri magnetici]], [[memoria flash|memorie flash]] di ogni tipo ed altro ancora.
Le memorie per computer possono usare varie tecnologie che forniscono prestazioni e costi molto variabili. Spesso per le memorie veloci ma dall'alto costo unitario si usa l'espressione "memoria centrale" o "memoria primaria", mentre per le memorie dal basso costo unitario ma lente si usa l'espressione "[[memoria di massa]]" o "memoria secondaria".
=== Per gerarchia ===
==== Memoria primaria o centrale ====▼
Collegata alla [[scheda madre]] tramite connettori chiamati [[Socket (elettronica)|socket]] ed alla [[CPU]] tramite il [[Bus (informatica)|BUS]] di sistema, la memoria primaria, chiamata anche memoria centrale o memoria principale, contiene dati ed istruzioni prelevati dalla [[memoria di massa]] in attesa che questi siano a loro volta prelevati ed elaborati dal microprocessore, lavorando dunque in maniera strettamente accoppiata con esso ed essendo
Molto spesso si tratta di memoria [[RAM]] e [[memoria cache]] e nelle moderne architetture dei processori è spesso incorporata nella [[scheda CPU]] o direttamente nel [[Circuito integrato|chip]] del processore stesso. È una parte importante del [[computer]] in quanto dalle sue dimensioni in termini di capacità di immagazzinamento dipende
▲==== Memoria primaria ====
▲Collegata alla [[scheda madre]] tramite connettori chiamati [[Socket (elettronica)|socket]] ed alla [[CPU]] tramite il [[Bus (informatica)|BUS]] di sistema, la memoria primaria, chiamata anche memoria centrale o memoria principale, contiene dati ed istruzioni prelevati dalla [[memoria di massa]] in attesa che questi siano a loro volta prelevati ed elaborati dal microprocessore, lavorando dunque in maniera strettamente accoppiata con esso ed essendo dunque assimilabile ad una memoria di transito o appoggio.
▲Molto spesso si tratta di memoria [[RAM]] e [[memoria cache]] e nelle moderne architetture dei processori è spesso incorporata nella [[scheda CPU]] o direttamente nel [[Circuito integrato|chip]] del processore stesso. È una parte importante del [[computer]] in quanto dalle sue dimensioni in termini di capacità di immagazzinamento dipende dunque la quantità massima di dati che possono essere prelevati e dunque elaborati dal processore in condizioni di [[monotasking]] e [[multitasking]] ed è quindi considerata a tutti gli effetti un parametro prestazionale del computer stesso. Qualora la memoria primaria venga esaurita molti sistemi di elaborazione moderni sono in grado di implementare il cosiddetto meccanismo della [[memoria virtuale]] come estensione provvisoria della memoria primaria.
Tale memoria è costituita da numerosissime ''celle di memoria'', dispositivi bistabili, capaci cioè di assumere due stati stabili alternativi attraverso i quali è possibile memorizzare la quantità minima di informazione (1 bit).
Riga 50 ⟶ 49:
Poiché nella realtà quotidiana le scelte possibili in vari casi sono molte più di due, un bit non è più sufficiente a rappresentarle e pertanto si è pensato di unire più celle di memoria in ''registri di memoria''.
Se con un solo bit è possibile ottenere solo due diversi stati, con due celle (2 bit) è possibile rappresentare 2<sup>2</sup> alternative, con l'associazione di 3 celle (3 bit) 2<sup>3</sup> alternative, e così via...
In particolare, la dimensione del registro più diffusa è quella da [[8 bit]]. L'unione di 8 bit forma infatti ''1 byte'' di memoria, il primo multiplo del bit, il quale può rappresentare fino a 256 possibili combinazioni diverse (2<sup>8</sup>).
In un registro di memoria le operazioni di lettura/scrittura avvengono contemporaneamente su tutte le celle facenti parte del registro. In memorie con registri da 1 byte, quindi, vengono lette 8 celle alla volta.
Riga 59 ⟶ 58:
Il processo consiste essenzialmente nella seguente sequenza di operazioni:
* La CPU trasferisce l'indirizzo del dato da leggere dal [[Program Counter]] (PC) al [[Memory Address Register]] (MAR);
* Il MAR invia tale indirizzo alla memoria tramite la linea degli indirizzi del bus di sistema parallelamente al segnale che specifica il tipo di operazione che si sta effettuando (in questo caso, lettura);
Riga 68 ⟶ 66:
===== L'operazione di scrittura =====
La scrittura consiste principalmente nelle seguenti operazioni:
*
*
▲* trasferimento dell'indirizzo che si intende scrivere dalla CPU al MAR e contemporaneamente trasferimento all'MDR del valore che si intende scrivere;
▲* trasferimento del valore dell'MBR (''Memory Byte Register'') alla cella di memoria il cui indirizzo è presente nel MAR.
La memoria centrale è organizzata come una tabella di celle, ciascuna delle quali è denotata da un indirizzo (celle che contengono una sequenza di [[bit]]; ogni bit può rappresentare l'informazione 0 oppure 1 tramite un diverso stato elettrico). Ogni cella ha una dimensione prefissata e gli indirizzi delle celle variano tra 0 e n, dove n è una potenza di 2.
Riga 93 ⟶ 90:
La tecnologia utilizzata attualmente per la realizzazione di memoria video è la [[GDDR]] (Graphics Double Data Rate).
==== Memoria secondaria o di massa ====
{{vedi anche|Memoria di massa}}
La memoria secondaria, chiamata anche memoria ausiliaria o memoria di massa, è un'unità che si aggiunge alla memoria primaria (o centrale) dell'elaboratore per accrescerne le capacità di memorizzazione. Consiste in una classe di [[Dispositivo (informatica)|dispositivi]] che non sono posti a diretto contatto con il [[processore]]. Di conseguenza i dati in essi contenuti non vengono persi una volta spento il processore stesso.
===== Tipi di memoria secondaria =====
Qui sotto sono elencate le varie categorie di memorie secondarie:
* I ''[[Disco magnetico|dischi magnetici]]'', composti da uno o più dischi (i [[disk pack]]) ricoperti di materiale ferromagnetico, vengono "letti e scritti" (cioè su questi dischi vengono salvati e recuperati i dati) mediante un braccio mobile dotato della "testina di lettura/scrittura". I dati vengono trasferiti ai dischi magnetici tramite un buffer nella memoria centrale ed occupano successive posizioni lungo le tracce, sotto forma di differenti stati di magnetizzazione. I settori dei dischi vengono letti e scritti interamente utilizzando il numero della superficie, della traccia e del settore. Il [[tempo di accesso]] ai dischi magnetici è superiore rispetto a quello della memoria centrale, ma i costi, a parità di quantità di informazione memorizzata, sono decisamente più bassi. Di questa categoria fanno parte ad esempio gli [[hard disk]] e i [[floppy disk]] (realizzati con materiale plastico flessibile).
* I ''[[Disco ottico|dischi ottici]]'', composti da materiale riflettente ricoperto da una sostanza protettiva, dove l'informazione viene registrata realizzando modificazioni della superficie riflettente e viene letta mediante un raggio [[laser]] che riscontra le irregolarità della superficie riflettente. I dischi ottici sono senza dubbio i supporti di memoria secondaria più diffusi: ne esistono di vari tipi, alcuni riscrivibili (cioè una volta scritti possono essere riscritti nuovamente) e non riscrivibili (una volta immagazzinati dei dati sul disco, questo non è più riscrivibile con altri dati). Fanno parte di questa categoria i [[Compact disc|CD]], i [[CD-ROM]] e i [[DVD]].
* I ''[[Nastro magnetico|nastri magnetici]]'', composti da fettucce di nastri magnetizzabili e gestiti dalle unità a nastro (che dispongono della testina lettura/scrittura), servono per svolgere funzioni di [[backup]] e [[log]] (registrazione delle operazioni effettuate in un certo tempo). I nastri magnetici consentono solo un accesso sequenziale ai dati (cioè è necessario leggere tutti i dati precedenti prima di accedere ad un certo dato). Tra i vari tipi di nastri magnetici, le prestazioni migliori sono ottenute dai [[Nastro magnetico|nastri per la memorizzazione di dati digitali]].
Riga 107 ⟶ 106:
Tra le varie idee, il modo più promettente per archiviare più immagini olografiche sullo stesso mezzo è utilizzare differenti angoli di [[divergenza]] tra i due laser. Cambiando l'angolo di incidenza del raggio di lettura è possibile infatti leggere pagine diverse. Ci sono però alcune problematiche che ostacolano la realizzazione di queste nuove memorie; le più importanti sono:
* l'elevata precisione [[ottica]] richiesta per il progetto
* la difficoltà per l'allineamento dei vari componenti
Riga 133 ⟶ 131:
Ecco gli esempi più diffusi per ognuno dei tre suddetti tipi:
* ''Memorie a lettura-scrittura'': memorie [[RAM]], memorie [[EPROM]], memorie [[EEPROM]], dischi ottici CD-RW, dischi ottici DVD-RW, [[Memoria flash|memorie elettroniche flash]], [[Memoria a nucleo magnetico|nuclei di ferrite]], [[Disco rigido|dischi rigidi]], [[floppy disk]], [[Disco magneto-ottico|dischi magneto-ottici]] RW.
* ''Memorie scrivibili una sola volta'': carta con penna a inchiostro indelebile, dischi magneto-ottici WORM, dischi ottici CD-R, dischi ottici DVD-R, memorie elettroniche [[Programmable Read Only Memory|PROM]].
Riga 158 ⟶ 155:
In base a tale criterio, si ha la seguente gerarchia:
* Registri della CPU, che forniscono la massima velocità di accesso, al massimo costo unitario.
* [[CPU cache|Cache]] interna alla CPU, detta anche cache di primo livello.
Riga 201 ⟶ 197:
== Voci correlate ==
{{Div col}}
* [[Big-endian]]
* [[Buffer]]
* [[Indirizzo di memoria]]
* [[Floating Body Cell]]▼
* [[Memoria (elettronica)]]
* [[Memoria a bolle]]
* [[Memoria a tamburo]]
* [[Memoria ausiliaria]]
* [[File system]] ▼
* [[Next Generation Memory]]▼
* [[Memoria cache]]
* [[Memoria flash]]
▲* [[File system]]
▲* [[Floating Body Cell]]
▲* [[Next Generation Memory]]
* [[Registro (informatica)]]
* [[
* [[Garbage collector]]▼
* [[Flip-flop]]
▲* [[Garbage collector]]
* [[Registro (informatica)]]
* [[Salvataggio (informatica)]]
* [[Storage]]
{{Div col end}}
== Altri progetti ==
{{interprogetto|preposizione=sulla|wikt=memoria|wikt_etichetta=memoria}}
== Collegamenti esterni ==
* {{Collegamenti esterni}}
* {{FOLDOC|memory|memory}}
{{Componenti basilari dei computer}}
{{Controllo di autorità}}
{{portale|informatica|elettronica|scienza e tecnica
[[Categoria:Memorie informatiche| Memoria(Informatica)]]
|