Vad är EOS-minne?

EOS-minne (Error correcting code-On-Single in-line memory modules memory) är en typ av Random Access Memory (RAM) datorminnesmodul som innehåller en inbyggd felkontrollenhet. Det här är lite som att ha en annan liten processor placerad på själva RAM-chipsen, vars enda ansvarsfulla är att säkerställa integriteten hos data som flyttas till och från datorns RAM-minne. EOS-minnet fungerar genom att beräkna en kontrollsumma för varje databit i minnet. Genom att jämföra den kända giltiga kontrollsumman med kontrollsumman när data lämnar EOS-minnet kan minnesmodulerna veta om data har skadats.

Fokuspunkten för att förstå hur EOS-minnet fungerar är kontrollsumman. Kontrollsumman är antingen en valideringssekvens med sju bitar – för 32-bitars datavägar – eller en åttabitars – för 64-bitars datavägar – som genereras av EOS-minnet när data tas emot i minnet. Den genereras baserat på den binära sekvensen i databyten, vilket skapar en unik sekvens av tecken för att representera den specifika databiten.

Så länge som data finns i EOS-minnet, lagras kontrollsumman bredvid den. EOS-minnet håller det där tills data begärs av ett program eller operativsystem. Vid den tidpunkten genererar den kontrollsumman baserat på den lagrade informationen och jämför den med den kända giltiga kontrollsumman. Om de två värdena matchar, vet minnesmodulen att data inte har skadats under lagring. Men om de inte gör det vet minnesmodulen att något har hänt med datan.

Om data i minnesmodulen har skadats – med andra ord, om kontrollsummorna inte längre stämmer överens – kan minnesmodulen försöka korrigera data på egen hand. EOS-minne kan självkorrigera fel på högst en bit per ord. Även om den kan upptäcka fel som är större än en enda bit, kan den inte korrigera dem på egen hand; i så fall genereras vanligtvis ett felmeddelande som anger att data är korrupta och varnar datorns användare om ett möjligt problem med antingen hårdvaran eller mjukvaran i systemet.

Den primära nackdelen med att använda den här typen av minne är att lagring av kontrollsumman kräver lite extra overhead i minnesmodulen. Det betyder att när man lagrar till exempel en megabyte data i RAM-minnet så lagrar datorn faktiskt en megabyte plus kontrollsumman. Även om detta har en minimal inverkan i de flesta omständigheter, betyder det att med varje ny databit – och varje ny lagrad kontrollsumma – kannibaliseras mängden tillgängligt RAM långsamt av felkontrollmekanismen.