Quando qualcuno usa il termine "memoria," stanno riferendosi tipicamente all'immagazzinaggio di dati fornito dai circuiti integrati dedicati situati sulla cartolina base. L'immagazzinaggio che questi circuiti integrati forniscono si riferisce a spesso come la memoria di accesso casuale (RAM), la memoria centraleed immagazzinaggio primario. Indietro nell'età di ferro, quando gli elaboratori centrali hanno camminato la terra, è stato denominato il nucleo. L'immagazzinaggio fornito da questi circuiti integrati è volatile, che deve dire che i dati nei circuiti integrati sono persi quando la corrente è spenta.
Ci sono vari tipi di RAM:
DRAM
SDRAM
SRAM
VRAM
La RAM dinamica (DRAM) deve essere migliaia ricaricate dei periodi ogni secondo. Il DRAM sincrono (SDRAM) è rinfrescato alla velocità di orologio a cui il processor fa funzionare il più efficientemente. La RAM statica (SRAM) non deve essere rinfrescata come il DRAM e questo lo rende molto più veloce. Purtroppo, SRAM è inoltre molto più costoso del DRAM ed è usato con parsimonia. SRAM tende ad essere usato nei nascondigli del processor ed il DRAM tende ad essere usato per la memoria all'ingrosso. Per concludere, ci è video RAM (VRAM), che è una regione della memoria usata da video fissaggi.
Gli avanzamenti recenti nella tecnologia e nelle ottimizzazioni speciali effettuate dai fornitori sicuri hanno condotto ad un certo numero di sigle supplementari. Qui è una coppia di loro:
DDR SDRAM
RDRAM
ESDRAM
DDR SDRAM corrisponde alla doppia memoria di accesso casuale dinamica sincrona di tasso di dati. Con DDR SDRAM, i dati sono letti sia sull'aumentare che sul cadere del battito di orologio del sistema, raddoppianti basicamente la larghezza di banda normalmente disponibile. RDRAM è corto per il DRAM di Rambus, una versione ad alto rendimento del DRAM venduta da Rambus che può trasferire i dati a 800 megahertz. Il DRAM sincrono aumentato (ESDRAM), prodotto dai sistemi aumentati di memoria, fornisce un senso sostituire SRAM con SDRAM più poco costoso.
Una punta è una singola cifra binaria (cioè, un 1 o un 0). Una punta in un circuito integrato di RAM è basicamente una struttura delle cellule di che si compone, secondo il tipo di RAM, una determinata configurazione dei transistori e condensatori. Ogni cellula è un interruttore digitale su che può o essere o fuori (cioè, 1 o 0). Queste cellule sono raggruppate nei byte 8-bit di chiamata delle unità. Il byte è l'unità fondamentale per la misurazione della quantità di memoria fornita da un dispositivo di memorizzazione. Durante i primi anni, i fornitori di fissaggi hanno usato effettuare i formati differenti di byte. Un fornitore userebbe un byte di 6 bits ed un altro userebbero un byte a 16 bit. Il campione de facto che tutto sembra rimanere oggi vicino, tuttavia, è il byte di 8 bits.
Ci è un insieme intero della metrica byte-basata per specificare il formato di una regione di memoria:
1 byte = 8 bit
1 parola = 2 byte
1 doppia parola = 4 byte
1 parola del quad = 8 byte
1 parola ottale = 8 byte
1 paragrafo = 16 byte
1 kilobyte (Kb) = 1.024 byte
1 megabyte (mb) = 1,024KB = 1.048.576 byte
1 gigabyte (GB) = 1,024MB = 1.073.741.824 byte
1 Terabyte (TB) = 1,024GB = 1.099.511.627.776 byte
1 petabyte (PB) = 1,024TB = 1.125.899.906.842.624 byte
| Nota | Negli anni 80, avere un megabyte del DRAM era un affare grande. I capretti hanno usato ostacolare i loro genitori per gli aggiornamenti di memoria 16KB in modo da il loro Atari 400s potrebbe giocare i più grandi giochi. Quando, avere soltanto un megabyte non era un problema significativo perché assistenti tecnici tende a programmarsi nel codice del complessivo ed a sviluppare i programmi molto piccoli. Infatti, questa citazione 1981 è attribuita spesso a Bill Gates: "640K deve essere abbastanza per qualcuno." |
Oggi, la maggior parte delle macchine di sviluppo hanno almeno 128MB del DRAM. In 2002, avere 256MB sembra essere la norma. Dieci anni da oggi, un gigabyte potrebbe essere la quantità standard di DRAM (se ancora stiamo usando il DRAM). Eventualmente, qualcuno non lo citerà.
La RAM non è l'unico posto per memorizzare i dati e questo è che cosa li conduce alla gerarchia di memoria. La gamma di posti differenti che possono essere usati per memorizzare le informazioni può essere ordinata secondo la loro prossimità al processor. Ciò che ordina produce la seguente gerarchia:
Registri
Nascondiglio
RAM
Memoria a dischi
La distinzione primaria fra questi depositi è il loro stato latente di memoria, o tempo di ritardo. L'immagazzinaggio più vicino al processor occorre meno tempo accedere a che l'immagazzinaggio che è ulteriore assente. Lo stato latente sperimentato nei dati d'accesso su un azionamento duro è molto più grande dello stato latente che accade quando il processor accede alla memoria nel relativo nascondiglio. Per esempio, lo stato latente di DRAM tende ad essere misurato nei nanosecondi. Lo stato latente dell'azionatore del disco, tuttavia, tende ad essere misurato nei millisecondi!
I registri sono piccoli spazi di immagazzinaggio che sono situati all'interno del processor in se. I registri sono luogo di lavoro favorito del processor. La maggior parte del lavoro giornaliero del processor è realizzato sui dati nei registri. I dati commoventi da un registro ad un altro sono il singolo senso più conveniente spostare i dati.
Le Software Engineei che progettano i compilatori salteranno appena con tutte le specie dei cerchi per mantenere le variabili ed i costanti nei registri. Avere tantissimi registri concede più di un programma dichiara per essere immagazzinato all'interno del processor in se e per ridurre stato latente di memoria. Il processor MIPS64 ha 32, registri 64-bit e per tutti gli usi per questo motivo stesso. Il Itanium, circuito integrato 64-bit della generazione seguente dell'Intel, va un punto più avanti ed ha letteralmente centinaia dei registri.
Il processor del Pentium dell'Intel ha un insieme vario dei registri. Ci sono sei, a 16 bit, registri di segmento (CS, DS, es, FS, GS, ss). Ci sono otto, registri 32-bit e per tutti gli usi (EAX, EBX, ECX, EDX, ESI, EDI, EBP, SPECIALMENTE). Ci è inoltre un registro 32-bit della bandierina di errore (EFLAGS) per segnalare i problemi e un indicatore di istruzione 32-bit (EIP).
Le funzioni avanzate dell'amministrazione di memoria sono facilitate da quattro registri del sistema (GDTR, LDTR, IDTR, TR) e da cinque registri di controllo di modo (CR0, CR1, CR2, CR3, CR4).
| Nota | È interessante notare come l'accumulazione del Pentium dei registri è stata costretta dalle forze storiche. Il requisito di disegno che richiede la compatibilità a rovescio ha provocato il Pentium che ha soltanto alcuni più registri che i 8086. |
Un nascondiglio fornisce l'immagazzinaggio provvisorio che può essere raggiunto più rapidamente del DRAM. Disponendo informaticamente le parti intense di un programma nel nascondiglio, il processor può evitare le spese generali di dovere continuamente accedere al DRAM. Il risparmio può essere drammatico. Ci sono tipi differenti di nascondigli. Un nascondiglio L1 è uno spazio di immagazzinaggio che è situato sul processor in se. Un nascondiglio L2 è tipicamente un circuito integrato di SRAM fuori del processor (per esempio, le navi del Pentium dell'Intel 4 con i 256 o 512KB L2 hanno avanzato il nascondiglio di trasferimento).
| Nota | Se state tentando di ottimizzare il codice che esegue nel nascondiglio, dovreste evitare le chiamate di funzione inutili. Una chiamata ad una funzione distante richiede al processor di eseguire il codice che si trova fuori del nascondiglio. Ciò induce il nascondiglio a ricaricare. Ciò è una ragione per la quale i compilatori di C sicuri vi offrono l'opzione di generazione delle funzioni in-linea. L'altro lato della moneta è che un programma che usa le funzioni in-linea sarà molto più grande di uno che non. L'alternanza di formato-contro-velocità è un atto d'equilibratura che eleva la relativa informatica della testa dappertutto. |
La memoria a dischi è l'opzione di ultimo ricorso. Tradizionalmente, lo spazio di disc è stato usato per generare la memoria virtuale. La memoria virtuale è memoria che è simulata usando lo spazio di disc. Cioè le parti della memoria, immagazzinate normalmente nel DRAM, sono scritte al disc in modo che la quantità di memoria che il processor può accedere a sia più grande della quantità reale di memoria fisica. Per esempio, se avete 10MB del DRAM ed usate 2MB dello spazio di disc per simulare la memoria, il processor può allora accedere a 12MB della memoria virtuale.
Usando la memoria virtuale è come fare un affare con il diavolo. Sicuri, otterrete i lotti della memoria supplementare, ma pagherete un costo terribile in termini di prestazioni. Il disc I/O coinvolge una serie intera di azioni obbligatorie, alcuni di cui sono meccanici. È valutato che la paginazione su Windows rappresenta approssimativamente 10% di tempo di esecuzione. La memoria virtuale in carico richiede la contabilità molto da parte del processor.
La memoria a dischi è stata sempre più poco costosa della RAM. Indietro negli anni 60 quando 8KB della RAM era un investimento grande, usando il disc per generare la memoria virtuale probabilmente ha avuto il significato. Oggi, tuttavia, la discrepanza di costo fra il DRAM e gli azionatori del disco non è significativa come allora era indietro. L'acquisto della macchina con 512MB di SDRAM non è unheard di. Potrebbe essere che la memoria virtuale si transformerà in in un relic completo o effettuato come certa specie della salvaguardia di emergenza.
Online: 508 users browsing the articles directory
![]() . |