La mémoire ECC est une méthode de stockage des données informatiques qui peut détecter et corriger les erreurs internes les plus courantes, ce qui suggère également le nom, l’acronyme ECC provenant de l’anglais Error Correcting Code, qui a été traduit en français en code de correction des erreurs.
ECC est le plus souvent utilisé pour les serveurs ou les systèmes où des données de grande valeur sont gérées. La technologie permet de détecter et de corriger les erreurs de mémoire d’un bit, une erreur de données dans la sortie ou la sortie du serveur, une erreur qui peut grandement affecter les performances du serveur ou même la perte de données.
Voici comment fonctionne la mémoire ECC
Les données sont reçues et transmises par des bits – la plus petite unité de données dans un ordinateur – qui est exprimée en code binaire en utilisant un ou zéro. Lorsque les bits sont groupés, ils créent un code binaire ou « mots », qui sont des unités de données qui sont adressées et déplacées entre la mémoire et la CPU. Par exemple, un code binaire de 8 bits est 10110001. Pour la technologie ECC, il existe un bit ECC supplémentaire, appelé bit de parité. Ce bit de parité supplémentaire fait lire le code binaire 101100010, où le dernier zéro est le bit de parité et est utilisé pour identifier les erreurs de mémoire. Si la somme de tous les 1 dans une ligne de code est un nombre par (sans inclure le bit de parité), alors la ligne de code est même appelée la parité. Le code sans erreur est toujours égal au par. Cependant, la parité a deux limitations: elle est capable de détecter seulement les nombres d’erreurs impairs (1, 3, 5, etc.) et permet la transmission des erreurs de nombre par (2, 4, 6, etc.). La parité est également incapable de corriger les erreurs – elle est seulement capable de les détecter. Ici, rentre en jeu la mémoire ECC.
ECC utilise des bits de parité pour stocker le code chiffré lors de l’écriture des données en mémoire, et le code ECC est stocké en même temps. Lors de la lecture des données, le code ECC stocké est comparé au code ECC généré lors de la lecture des données. Si le code qui a été lu ne correspond pas au code stocké, il est décrypté par des bits de parité pour déterminer quel bit était erroné, puis ce bit est corrigé immédiatement. Au fur et à mesure que les données sont traitées, la mémoire ECC balaye constamment le code avec un algorithme spécial pour détecter et corriger les erreurs de mémoire d’un bit.
Pourquoi cette mémoire ECC est-elle importante?
Comme de plus en plus d’entre nous utilisent les services Cloud et les technologies virtuelles, les serveurs sont également devenus importants pour les utilisateurs ordinaires et pas seulement pour les entreprises. Vous utilisez probablement aussi Dropbox, GooglePhotos ou iCloud, les serveurs qui stockent vos données précieuses sont basés sur des mémoires ECC qu’ils sont sûrs et ne perdent pas vos données.
Avez-vous aussi besoin de mémoire ECC?
En fait, ECC peut trouver et corriger certaines erreurs de mémoire, mais a un prix, peut affecter les performances, ralentissant environ 2-4% du système. Heureusement, les erreurs de mémoire sont rares dans les mémoires les plus performantes d’aujourd’hui, de sorte que la plupart des utilisateurs n’ont pas besoin d’un ECC à la maison. Toutefois, si vous envisagez d’utiliser le système en tant que serveur ou poste de travail, je vous recommande d’acheter un ECC pour votre sécurité des données. Sinon, il est préférable d’enregistrer vos données fréquemment sur un disque dur, de sorte que la possibilité de les perdre diminuera considérablement.