Che cos’è la memoria EOS?

La memoria EOS (Error Correcting Code-On-Single in-line memory module memory) è un tipo di modulo di memoria del computer Random Access Memory (RAM) che contiene un dispositivo di controllo degli errori integrato. È un po’ come avere un altro minuscolo processore situato sui chip RAM stessi, la cui unica responsabilità è garantire l’integrità dei dati che si spostano da e verso la memoria RAM del computer. La memoria EOS funziona calcolando un checksum per ogni bit di dati in memoria. Il confronto del checksum valido noto con il checksum quando i dati lasciano la memoria EOS consente ai moduli di memoria di sapere se i dati sono stati danneggiati.

Il punto focale per capire come funziona la memoria EOS è il checksum. Il checksum è una sequenza di convalida a sette bit, per percorsi dati a 32 bit, o a otto bit, per percorsi dati a 64 bit, generata dalla memoria EOS quando i dati vengono ricevuti per la prima volta in memoria. Viene generato in base alla sequenza binaria nei byte dei dati, creando una sequenza di caratteri univoca per rappresentare quella specifica porzione di dati.

Finché i dati risiedono nella memoria EOS, il valore di checksum viene archiviato insieme ad esso. La memoria EOS lo mantiene lì finché i dati non vengono richiesti da un programma o dal sistema operativo. A quel punto, rigenera il checksum in base alle informazioni memorizzate, confrontandolo con il checksum valido noto. Se i due valori corrispondono, il modulo di memoria sa che i dati non sono stati corrotti durante la memorizzazione. Ma se non lo fanno, il modulo di memoria sa che è successo qualcosa ai dati.

Se i dati nel modulo di memoria sono stati danneggiati, in altre parole, se i checksum non corrispondono più, il modulo di memoria può tentare di correggere i dati da solo. La memoria EOS è in grado di correggere automaticamente gli errori di non più di un bit per parola. Sebbene possa rilevare errori maggiori di un singolo bit, non può correggerli da solo; in tal caso, viene generalmente generato un messaggio di errore, che indica che i dati sono corrotti e avvisa l’utente del computer di un possibile problema con l’hardware o il software nel sistema.

Lo svantaggio principale dell’utilizzo di questo tipo di memoria è che la memorizzazione del valore di checksum richiede un po’ di sovraccarico aggiuntivo nel modulo di memoria. Ciò significa che quando si archivia, ad esempio, un megabyte di dati nella RAM, il computer memorizza effettivamente un megabyte più il valore di checksum. Sebbene questo abbia un impatto minimo nella maggior parte dei casi, significa che con ogni nuovo bit di dati e ogni nuovo checksum memorizzato, la quantità di RAM disponibile viene lentamente cannibalizzata dal meccanismo di controllo degli errori.