Mebibyte
Symbol: MiBWorldwide
Qu'est-ce qu'un/une Mebibyte (MiB) ?
Définition Formelle
Le mebibyte (symbole : MiB) est une unité de stockage d'informations numériques définie par la Commission électrotechnique internationale (IEC) comme étant exactement 2²⁰ octets, ou 1 048 576 octets. Le préfixe "mebi-" est une contraction de "méga-binaire", et le mebibyte fait partie de la norme de préfixes binaires IEC 80000-13 introduite en 1998. Un mebibyte équivaut à 1 024 kibibytes (KiB).
Le mebibyte a été créé pour fournir un terme sans ambiguïté pour la quantité qui avait traditionnellement été appelée "mégaoctet" dans les contextes informatiques. En informatique, la mémoire et le stockage étaient historiquement mesurés en puissances de 1024 en raison de la nature binaire des systèmes numériques, mais le même préfixe SI "méga" était utilisé — créant une ambiguïté avec la définition SI de méga comme étant exactement 10⁶ (1 000 000). Le système de préfixes binaires de l'IEC résout cela : un mebibyte (MiB) est exactement 1 048 576 octets, tandis qu'un mégaoctet (MB) est exactement 1 000 000 octets.
Comparaison de Taille
Un mebibyte est 4,858 % plus grand qu'un mégaoctet. Bien que cette différence puisse sembler petite, elle s'accumule à des échelles plus grandes et peut être significative dans la pratique. Un fichier signalé comme "100 MB" en décimal contient 100 000 000 octets, tandis que "100 MiB" en binaire contient 104 857 600 octets — une différence de près de 5 millions d'octets. Dans des environnements à mémoire limitée tels que les systèmes embarqués, le développement de firmware et la programmation du noyau du système d'exploitation, cette distinction est cruciale.
Etymology
Construction du Terme
Le mot "mebibyte" a été construit par le Comité technique 25 de l'IEC suivant une convention de nommage systématique. Le préfixe "mebi-" combine les deux premières lettres de "méga" avec les deux premières lettres de "binaire", donnant "mebi" (prononcé MEH-bee). Ce modèle de construction s'applique à tous les préfixes binaires de l'IEC : kibi, mebi, gibi, tebi, pebi et exbi. Le symbole MiB utilise "Mi" pour le préfixe et "B" pour octet.
Réception Linguistique
Le terme "mebibyte" a rencontré une résistance significative dans l'usage quotidien, de nombreux ingénieurs et utilisateurs trouvant les noms de préfixes binaires de l'IEC maladroits ou peu familiers. Les critiques ont noté que des mots comme "mebibyte" et "gibibyte" sont phonétiquement similaires et peuvent sembler inhabituels en anglais. Malgré cela, les termes ont gagné une acceptation régulière dans la documentation technique, les publications scientifiques et les logiciels conformes aux normes au cours des deux dernières décennies.
Precise Definition
Norme IEC 80000-13
Le mebibyte est défini dans IEC 80000-13 (anciennement IEC 60027-2) comme : 1 MiB = 2²⁰ B = 1 048 576 B = 1 024 KiB. La norme distingue explicitement cela du mégaoctet : 1 MB = 10⁶ B = 1 000 000 B = 1 000 kB. Les deux définitions sont précises et sans ambiguïté dans leurs cadres respectifs.
Approbation Internationale
Les préfixes binaires de l'IEC, y compris le mebibyte, sont approuvés par le NIST (dans son Guide pour l'utilisation du Système international d'unités), l'IEEE (dans l'IEEE 1541-2002), l'ISO (dans l'ISO/IEC 80000) et le BIPM. La communauté des normes a atteint un consensus selon lequel les préfixes SI doivent se référer exclusivement aux puissances de 1000, et les préfixes binaires doivent être utilisés pour les puissances de 1024. Cependant, la mise en œuvre par les fournisseurs de logiciels reste incohérente.
Implications Pratiques
La différence entre MiB et MB affecte les calculs du monde réel. Lorsqu'un programmeur alloue 256 MB de mémoire, le système d'exploitation alloue généralement 256 × 1 048 576 = 268 435 456 octets (256 MiB). Mais si un protocole réseau spécifie une limite de données de 256 MB en utilisant la définition SI, cela signifie 256 000 000 octets. Le mebibyte fournit un moyen de spécifier exactement quelle interprétation est intended.
Histoire
Origines de la Confusion du Mégaoctet
Le terme "mégaoctet" a été ambigu depuis les débuts de l'informatique. Dans les années 1970 et 1980, lorsque la mémoire des ordinateurs était mesurée en kilooctets et en mégaoctets, l'industrie informatique utilisait universellement ces termes pour signifier des puissances de 1024. Le processeur Intel 8086 (1978) pouvait adresser 1 MB de mémoire, ce qui signifie 1 048 576 octets. Le Commodore Amiga (1985), le Macintosh (1984) et l'IBM PC AT (1984) utilisaient tous "mégaoctet" pour signifier 2²⁰ octets.
La confusion a commencé lorsque les fabricants de stockage ont commencé à utiliser la définition SI. Les disquettes, les disques durs et les supports optiques étaient commercialisés en utilisant des puissances de 1000, tandis que les systèmes d'exploitation affichaient les tailles en utilisant des puissances de 1024. Cette divergence est devenue une source persistante de plaintes des consommateurs et de confusion technique.
La Réponse de l'IEC
L'IEC a d'abord publié la norme de préfixes binaires en 1998, introduisant le mebibyte et ses unités sœurs. La norme a été révisée et a été incorporée dans l'IEC 80000-13 en 2008. L'objectif était simple : donner à l'interprétation binaire son propre nom et symbole distincts, laissant "mégaoctet" signifier exactement 10⁶ octets comme le système de préfixes SI le dicte.
Chronologie de l'Adoption
Les distributions Linux ont commencé à adopter la notation MiB au milieu des années 2000. Les utilitaires de base GNU ont ajouté le support des préfixes binaires IEC. Ubuntu, Fedora et d'autres distributions ont mis à jour leurs gestionnaires de fichiers et outils système. Apple a adopté une approche différente en 2009, faisant en sorte que macOS utilise des définitions décimales SI strictes (1 MB = 1 000 000 octets). Microsoft Windows reste le plus grand réfractaire, continuant à utiliser des calculs binaires avec des étiquettes SI à travers Windows 11.
Utilisation actuelle
Développement Logiciel
Le mebibyte est largement utilisé dans le développement de logiciels pour spécifier les limites de mémoire, les tailles de tampon et les contraintes de taille de fichier. Les paramètres de mémoire de la Java Virtual Machine (JVM) utilisent des valeurs MiB : "-Xmx512m" alloue 512 MiB d'espace de tas. Les limites de mémoire des conteneurs Docker, les demandes de ressources Kubernetes et les allocations de mémoire des fonctions cloud sont généralement spécifiées en MiB. Le runtime du langage de programmation Go rapporte l'utilisation de la mémoire en octets, mais les développeurs convertissent couramment en MiB pour la lisibilité.
Systèmes d'Exploitation
Les messages du noyau Linux, les outils de gestion de la mémoire et les moniteurs système rapportent la mémoire en MiB et GiB. La commande free affiche la mémoire en kibibytes par défaut, avec le drapeau -h montrant des valeurs MiB/GiB lisibles par l'homme. macOS affiche la mémoire en MB et GB décimaux. Windows affiche la mémoire en valeurs binaires mais les étiquette comme MB et GB, créant une approche hybride qui ne correspond à aucune norme parfaitement.
Réseautage et Protocoles
Dans le réseautage, les protocoles de transfert de fichiers spécifient souvent les tailles en MiB. Les en-têtes FTP, SFTP et HTTP Content-Length utilisent des comptes d'octets exacts, mais les applications de transfert destinées aux utilisateurs affichent les progrès en MiB. Les clients BitTorrent affichent généralement les tailles de fichiers et les taux de transfert en utilisant des préfixes binaires (MiB/s).
Systèmes Embarqués et Firmware
Les systèmes embarqués ont couramment une mémoire mesurée en puissances exactes de deux : 1 MiB, 2 MiB, 4 MiB, 8 MiB ou 16 MiB de stockage flash. Les microcontrôleurs comme l'ESP32 ont 4 MiB de mémoire flash, et les images de firmware doivent tenir dans ces partitions de taille binaire exactes. Le mebibyte est l'unité naturelle pour ces calculs.
Everyday Use
Tailles de Fichiers Courants
De nombreux fichiers quotidiens se situent dans la plage des mebibytes. Une photographie de smartphone haute résolution (12 MP, JPEG) fait généralement entre 3 et 8 MiB. Une chanson MP3 de trois minutes à 320 kbps fait environ 7 MiB. Un document PDF de 50 pages avec des images pourrait faire entre 5 et 20 MiB. Un clip vidéo de 1080p d'une minute compressé avec H.264 fait environ 15 à 30 MiB selon le débit binaire.
Comprendre Votre Stockage
Lorsque votre ordinateur indique qu'un dossier contient "256 MB" de fichiers, le nombre d'octets réel dépend du système d'exploitation. Sur Windows, cela signifie environ 268 millions d'octets (256 MiB). Sur macOS, cela signifie environ 256 millions d'octets (256 MB). Comprendre cette distinction aide à expliquer pourquoi un fichier téléchargé depuis Internet peut apparaître d'une taille différente selon l'ordinateur sur lequel vous le consultez.
Email et Messagerie
Les limites des pièces jointes par email sont généralement spécifiées en mébibytes, bien que libellées comme mégaoctets. La limite de pièce jointe de 25 MB de Gmail signifie 25 × 1 000 000 = 25 000 000 octets. Cependant, l'encodage base64 utilisé pour les pièces jointes par email augmente la taille du fichier d'environ 33 %, de sorte que la limite pratique est plus proche de 18,75 MB (17,88 MiB) de données de fichier originales.
In Science & Industry
Recherche en Architecture Informatique
Dans l'architecture informatique, le mebibyte est essentiel pour décrire les tailles de cache, la bande passante mémoire et les structures de tables de pages. Les CPU modernes ont des caches L2 de 256 KiB à 2 MiB par cœur et des caches L3 de 8 à 128 MiB partagés entre les cœurs. La bande passante mémoire est mesurée en MiB/s ou GiB/s. Les articles de recherche en architecture informatique utilisent la notation MiB pour garantir la précision lors du rapport des métriques de performance.
Recherche sur la Compression de Données
Les benchmarks des algorithmes de compression mesurent les ratios de compression en utilisant des comptes d'octets exacts, généralement exprimés en MiB. Le Canterbury Corpus, une suite de tests standard pour les algorithmes de compression, comprend des fichiers allant de quelques KiB à plusieurs MiB. Les articles de recherche rapportent les tailles compressées en MiB pour permettre une comparaison précise entre les algorithmes.
Recherche sur les Systèmes d'Exploitation
La recherche sur les systèmes d'exploitation repose sur des mesures de mémoire précises. Les études sur les modèles d'allocation de mémoire, le comportement des fautes de page, les tailles de jeux de travail et la fragmentation de la mémoire nécessitent toutes des unités sans ambiguïté. Le mebibyte est l'unité standard dans les publications ACM et IEEE sur les systèmes d'exploitation, la mémoire virtuelle et la performance des systèmes.
Analyse des Protocoles Réseau
Les chercheurs en réseau analysent les captures de paquets et les modèles de trafic en utilisant des outils qui rapportent les tailles en MiB. Wireshark, tcpdump et des outils similaires affichent les tailles de fichiers de capture et le débit à la fois en MiB et en MB, selon la configuration. Les recherches publiées sur la performance réseau, le contrôle de congestion et l'optimisation des protocoles utilisent MiB pour éviter l'ambiguïté des préfixes SI.
Interesting Facts
The difference between 1 MiB and 1 MB is 48,576 bytes — enough to store approximately 48 pages of plain text. At the terabyte scale, this discrepancy grows to nearly 100 GiB, equivalent to roughly 25 HD movies.
The original Apple Macintosh (1984) shipped with 128 KiB of RAM, which Apple marketed as '128K.' Its successor, the Macintosh 512K, had exactly 512 KiB (524,288 bytes) — a quantity that can only be expressed cleanly using binary prefixes.
A standard CD-ROM holds 700 MB (700,000,000 bytes) of data, which equals approximately 667.6 MiB. This discrepancy of 32.4 MiB is why early CD burning software sometimes showed confusing capacity figures.
The first computer to ship with 1 MiB of RAM was the VAX-11/780 (1977), which could be configured with up to 8 MiB. At the time, this was an extraordinary amount of memory, costing tens of thousands of dollars.
Video game cartridges provide a clear example of MiB usage: the original Super Nintendo cartridges ranged from 0.5 MiB to 6 MiB, while Nintendo 64 cartridges maxed out at 64 MiB. Modern Switch game cards hold up to 32 GiB.
The Linux kernel's out-of-memory (OOM) killer, which terminates processes when memory runs low, uses exact MiB calculations to determine memory usage. A miscalculation of even a few MiB could mean killing the wrong process.