Che cosè la memoria ECC?

Alcune RAM, o memorie ad accesso casuale, sono pubblicizzate come memoria ECC. ECC sta per Error Correcting Code ed è un processo di identificazione e correzione degli errori nella memoria. Gli errori nella RAM possono causare il danneggiamento o l'alterazione dei dati, che possono causare arresti anomali del dispositivo e persino vulnerabilità della sicurezza. La RAM ECC in genere non è compatibile con l'hardware per PC di livello consumer.

Cosa sono gli errori di memoria?

Gli errori di memoria sono un problema in cui viene modificato il valore archiviato in memoria. I dati nella RAM sono memorizzati in binario, con valori di 1 o 0. Se il valore di un 1 viene commutato a 0 o viceversa, in un processo chiamato "bit-flipping", i dati memorizzati nella RAM cambiano.

Ad esempio, il bit modificato potrebbe essere utilizzato per memorizzare un valore in un foglio di calcolo. In questo caso, il valore nel foglio di calcolo potrebbe essere cambiato in un numero completamente diverso che influenzerebbe il risultato per eventuali calcoli, ad esempio alterando le previsioni economiche di un'azienda. In altri casi, il bit modificato potrebbe disabilitare una funzione di sicurezza o creare un errore di battitura che altera il modo in cui viene eseguito un programma. Questi due esempi sono estremamente difficili da rilevare e risolvere senza l'uso della memoria ECC. In uno scenario estremo, un singolo bit capovolto potrebbe causare un errore catastrofico che provoca un arresto anomalo del sistema.

Il bit-flip ha molte potenziali cause, la causa più comune è il risultato della radiazione di fondo, principalmente causata da neutroni creati da eventi di raggi cosmici. Un raggio cosmico è una particella ad alta energia, tipicamente un protone, che viaggia quasi alla velocità della luce. Sono emessi da corpi stellari tra cui il Sole e altri oggetti astronomici ad alta energia. Quando un raggio cosmico colpisce un atomo, viene creata una pioggia di neutroni e altre particelle subatomiche, questi neutroni continuano ad avere interazioni secondarie.

Si ritiene che queste interazioni secondarie di neutroni siano la fonte primaria di errori di capovolgimento dei bit. I raggi cosmici sono più comuni ad altitudini più elevate con un aumento di 3,5 volte a 1,5 km sul livello del mare e un aumento di 300 volte all'altitudine di crociera degli aerei di linea. Questo aumento del rischio in quota richiede misure di affidabilità aggiuntive.

Quanto sono comuni gli errori di memoria?

La maggior parte delle persone non vede i propri computer andare in crash ogni giorno, quindi sarebbe facile pensare che questo sia principalmente un rischio teorico. La ricerca dei data center iperscala è stata utilizzata per analizzare il tasso di incidenti di cambio di bit. La ricerca condotta da Google nei suoi data center ha mostrato un tasso di errore di circa 1 errore a bit singolo per gigabyte di RAM ogni 1,8 ore.

La missione Cassini-Huygens della NASA, lanciata nel 1997 per viaggiare su Saturno, è stata configurata con due computer di volo identici ciascuno con 2,5 Gb di RAM. Durante i primi due anni e mezzo del suo viaggio, la navicella spaziale ha osservato un consistente errore di 280 bit al giorno. Durante un giorno, quando Cassini-Huygens era nel percorso di un brillamento solare, è stato osservato un aumento di quattro volte degli errori di bit, fornendo ulteriori prove del fatto che il Sole è la causa della maggior parte dei problemi di capovolgimento dei bit.

Si temeva che il continuo aumento della densità dei moduli RAM avrebbe portato a versioni successive della RAM sempre più vulnerabili ai capovolgimenti dei bit. Studi più recenti hanno dimostrato che in effetti è vero il contrario, poiché gli errori sono diminuiti al diminuire della geometria del processo.

In che modo la memoria ECC protegge dagli errori?

La memoria ECC utilizza codici di correzione degli errori, come i codici di Hamming, per correggere errori a bit singolo nella RAM. Gli errori a doppio bit possono essere rilevati ma non corretti. I codici di correzione degli errori di Hamming funzionano utilizzando una matrice di bit di parità. Insieme, questi bit di parità possono essere utilizzati per rilevare se i bit di dati sono cambiati. Se un bit viene identificato come capovolto, viene ripristinato automaticamente.

Suggerimento: un errore a bit singolo è un incidente di capovolgimento di bit quando viene capovolto solo un singolo bit. Negli errori double0bit, vengono capovolti due bit. Non è necessario che i due bit vengano capovolti nello stesso incidente, il secondo capovolgimento del bit deve avvenire solo prima che il primo bit capovolto venga corretto.

Un bit di parità in più rispetto a quello richiesto è incluso nei codici di correzione degli errori di Hamming. Questo bit di parità extra dà al codice la capacità di rilevare il verificarsi di errori a doppio bit, tuttavia, questi errori non possono essere corretti.

Il processo di rilevamento e correzione degli errori viene eseguito sul controller di memoria a bordo della chiavetta RAM.

Disponibilità e supporto dei consumatori

La maggior parte dell'hardware per PC di fascia consumer non supporta la memoria ECC. Questo è in parte un metodo per distinguere artificialmente l'hardware del server dall'hardware del consumatore. La RAM ECC, tuttavia, costa di più e funziona leggermente più lentamente. Inoltre, la stabilità extra che fornirebbe ai consumatori domestici è minima in quanto gli errori di capovolgimento dei bit non sono la causa principale degli arresti anomali del sistema.

Nessuna delle CPU Intel di livello consumer e per appassionati supporta la memoria ECC, solo le sue CPU di livello server, come le CPU della gamma Xeon. Le CPU di fascia consumer di AMD non supportano ECC, tuttavia, le loro CPU per workstation e server, rispettivamente Threadripper ed EPYC, supportano la memoria ECC.



Leave a Comment

Come clonare un disco rigido

Come clonare un disco rigido

Nell'era digitale moderna, in cui i dati sono una risorsa preziosa, la clonazione di un disco rigido su Windows può essere un processo cruciale per molti. Questa guida completa

Come risolvere il problema con il caricamento del driver WUDFRd su Windows 10?

Come risolvere il problema con il caricamento del driver WUDFRd su Windows 10?

Stai riscontrando il messaggio di errore durante l'avvio del computer che dice che il driver WUDFRd non è stato caricato sul tuo computer?

Come risolvere il codice di errore NVIDIA GeForce Experience 0x0003

Come risolvere il codice di errore NVIDIA GeForce Experience 0x0003

Hai riscontrato l'esperienza NVIDIA GeForce con il codice di errore 0x0003 sul tuo desktop? Se sì, leggi il blog per scoprire come correggere questo errore in modo semplice e veloce.

How to Use Auto Clicker for Chromebook

How to Use Auto Clicker for Chromebook

Today, were going to delve into a tool that can automate repetitive clicking tasks on your Chromebook: the Auto Clicker. This tool can save you time and

Come rimuovere una GPU da un PC Windows nel 2023

Come rimuovere una GPU da un PC Windows nel 2023

Devi rimuovere la GPU dal tuo PC? Unisciti a me mentre ti spiego come rimuovere una GPU dal tuo PC in questa guida dettagliata.

Come installare ununità SSD NVMe su desktop e laptop

Come installare ununità SSD NVMe su desktop e laptop

Hai acquistato un nuovo SSD NVMe M.2 ma non sai come installarlo? Continua a leggere per sapere come installare un'unità SSD NVMe su laptop o desktop.

Cosè una bomba logica?

Cosè una bomba logica?

Una bomba logica è un incidente di sicurezza in cui un utente malintenzionato organizza un'azione ritardata. Continua a leggere per scoprire di più.

Che cosè Stuxnet?

Che cosè Stuxnet?

Stuxnet era un worm autopropagante. È stato il primo utilizzo di un'arma informatica e la prima istanza di malware.

Cosè un hacker etico?

Cosè un hacker etico?

Un hacker etico è un hacker che agisce entro i limiti della legge. Continua a leggere per saperne di più sull'argomento.

Che cosè la crittografia simmetrica?

Che cosè la crittografia simmetrica?

Ci sono molte parti diverse della crittografia. Se vuoi crittografare alcuni dati, ci sono due tipi di algoritmi che puoi usare: symmetric