• Temps de lecture :4 mins read

Avez-vous remarqué que votre disque dur ou ordinateur acheté dans le commerce n’avait pas une capacité de mémoire complète ?

Par exemple, un disque dur de 2To ne faisait que 1.8To.

La première chose qui vient en tête est qu’il y aurait une partition cachée sur le disque dur. Hé bien, non ce n’est pas ça. Cela vient de la normalisation des unités de mesure.

Avant 1998

La situation était simple jusqu’à cette date.

Nous avons deux unités de mesure pour représenter un volume de donnée et la capacité des supports de stockage :

  • le bit
  • l’octet

Lorsque les valeurs sont importantes, nous utilisons un système de multiples de l’unité de mesure pour diminuer la longueur en caractères de ces valeurs.

Pour simplifier mon explication, voici un tableau basé sur les principaux multiples de l’octet utilisés en informatique :

Nom Symbole Valeur
kilo-octet
Ko
2^10 soit 1 024 octets
mégaoctet
Mo
2^20 soit 1 048 576 octets
gigaoctet
Go
2^30 soit 1 073 741 824 octets
téraoctet
To
2^40 soit 1 099 511 627 776 octets

Comme vous pouvez le voir, il utilisait le système en base de 2, le système binaire, ce qui est logique pour de l’informatique.

Pour l’instant, je suppose que vous suivez. Passez aux choses sérieuses.

Système International en 1998

Pour des problèmes de normes en vigueur, l’incompatibilité avec les autres unités de mesure, le Bureau international des poids et mesures a décidé une refonte des multiples pour répondre aux problématiques.

Elle passe d’un système binaire à un système décimal comme pour toutes les autres unités de mesure non liées à l’informatique :

  • Avant : 1kg = 1000g / 1ko = 1024 octets
  • Après :1 kg = 1000g / 1ko = 1000 octets

Ce système garde les mêmes symboles.

Pour répondre aux exigences du monde informatique ne pouvant se passer du système binaire, de nouveaux multiples ont été créés à cet effet.

Système décimal

Système binaire

Nom Symbole Valeur Nom symbole valeur
kilo-octet
ko
10^3
kibio-octet
Kio
2^10
mégaoctet
Mo
10^6
mébioctet
Mio
2^20
gigaoctet
Go
10^9
gibioctet
Gio
2^30
téraoctet
To
10^12
tébioctet
Tio
2^40

Il est toujours d’usage d’utiliser le préfixe « K » (majuscule) pour le système binaire et le « k » (minuscule) pour le système décimal (SI).

Aujourd'hui

En Europe et plus précisément en France, il n’y a aucune législation qui oblige les entreprise à afficher/étiqueter dans un système particulier (binaire ou décimal).

Toutefois, la directive  européenne 2011/83/UE et le droit français (notamment le Code de la consommation) imposent que la capacité de stockage ou de mémoire soit indiquée de manière claire et non trompeuse. Elle se traduit par les préfixes (des unités de mesure) affichés :

  • Mo/Go/To pour le système décimal (SI)
  • Mio/Gio/Tio pour le système binaire

Les fabricants et les enseignes de commerce utilisent le système décimal pour afficher la capacité des supports de stockage et appareils (ordinateurs, tablettes…). Il l’expriment donc avec les unités de mesure Mo, Go, To.

Voyons ça en pratique. Je vais vous montrer la capacité de deux disques durs. Le premier est théoriquement de 2To et le second de 500Go.

Capacité mémoire de disques

J’ai encadré en orange les valeurs exprimées en octets et en noir les valeurs en Go.

Théoriquement, les capacités mémoire devraient être de :

  • 2 x 10^12 soit 2 000 000 000 000 octets
  • 500 x 10^9 soit 500 000 000 000 octets.

Cela correspond aux capacités affichées par un cadre orange (c’est normal qu’elles soient légèrement supérieurs de 2%).

Or, les valeurs encadrées en noir sont respectivement de 1.81To et 465 Go soient 7 à 9% d’écart. Là ce n’est pas normal. 

Devinez-vous quelle en est la raison avec tout ce que j’ai expliqué jusqu’à maintenant ?

Hé oui, Windows utilise le système binaire :

  • 1Tio = 2^40 o soit 1 099 511 627 776 octets 
    2 000 000 000 000 / 1 099 511 627 776 ≈ 1.81Tio
  • 1 Gio = 2^30 o soit 1 073 741 824 octets
    500 000 000 000 / 1 073 741 824 ≈ 465 Gio

Conclusion

Le problème vient uniquement sur le fait que certains systèmes d’exploitation fonctionnent encore avec le système binaire comme Windows et Linux.

Par contre, il y a une erreur flagrante car Windows affiche une valeur du système binaire mais avec le symbole du système décimal. La faute vient donc de Microsoft.