Préfixe binaire - Binary prefix

Préfixes pour les multiples de
bits (bit) ou d' octets (B)
Décimal
Valeur SI
1000 k kilo
1000 2 M méga
1000 3 g giga
1000 4 T téra
1000 5 P péta
1000 6 E exa
1000 7 Z zetta
1000 8 Oui tu dois
Binaire
Valeur CEI Mémoire
1024 Ki kibi K kilo
1024 2 Mi mebi M méga
1024 3 Gi gibier g giga
1024 4 Ti tebi T téra
1024 5 Pi pebi
1024 6 Ei exbi
1024 7 Zi zébi
1024 8 Yi yobi

Un préfixe binaire est un préfixe d'unité pour les multiples d' unités de traitement de données, de transmission de données et d'informations numériques, notamment le bit et l' octet , pour indiquer la multiplication par une puissance de 2.

L'industrie informatique a historiquement utilisé les unités kilooctet , mégaoctet et gigaoctet , et les symboles correspondants Ko, Mo et Go, dans au moins deux systèmes de mesure légèrement différents. Dans les citations de capacité de la mémoire principale ( RAM ), gigaoctet signifie habituellement1 073 741 824 octets. Comme il s'agit d'une puissance de 1024 et que 1024 est une puissance de deux (2 10 ), cette utilisation est appelée mesure binaire .

Dans la plupart des autres contextes, l'industrie utilise les multiplicateurs kilo , méga , giga , etc., d'une manière cohérente avec leur signification dans le Système international d'unités (SI), à savoir en tant que puissances de 1000. Par exemple, un disque dur de 500 gigaoctets détient500 000 000 000 octets, et une connexion Ethernet à 1 Gbit/s (gigabit par seconde) transfère les données à une vitesse nominale de1 000 000 000 bits/s. Contrairement à l' utilisation du préfixe binaire , cette utilisation est décrite comme un préfixe décimal , car 1000 est une puissance de 10 (10 3 ).

L'utilisation des mêmes préfixes d'unité avec deux significations différentes a semé la confusion. À partir de 1998, la Commission électrotechnique internationale (CEI) et plusieurs autres organismes de normalisation et de commerce ont résolu l'ambiguïté en publiant des normes et des recommandations pour un ensemble de préfixes binaires qui se réfèrent exclusivement aux puissances de 1024. En conséquence, l'US National Institute of Standards and Technology (NIST) exige que les préfixes SI ne soient utilisés qu'au sens décimal : les kilo - octets et les mégaoctets désignent respectivement mille octets et un million d'octets (conformément à SI), tandis que les nouveaux termes tels que kibibyte , mebibyte et gibibyte , ayant les symboles KiB, MiB, et GiB, désignent 1024 octets,1 048 576 octets, et1 073 741 824 octets, respectivement. En 2008, les préfixes CEI ont été incorporés dans le Système international des quantités aux côtés des préfixes décimaux du système international normalisé d'unités (voir ISO/CEI 80000 ).

Histoire

Mémoire principale

Les premiers ordinateurs utilisaient l'une des deux méthodes d'adressage pour accéder à la mémoire système ; binaire (base 2) ou décimal (base 10). Par exemple, l' IBM 701 (1952) utilisait le binaire et pouvait adresser 2048 mots de 36 bits chacun, tandis que l' IBM 702 (1953) utilisait la décimale et pouvait adresser dix mille mots de 7 bits.

Au milieu des années 1960, l'adressage binaire était devenu l'architecture standard dans la plupart des conceptions d'ordinateurs, et les tailles de la mémoire principale étaient le plus souvent des puissances de deux. C'est la configuration la plus naturelle pour la mémoire, car toutes les combinaisons de leurs lignes d'adresse correspondent à une adresse valide, permettant une agrégation facile dans un bloc de mémoire plus grand avec des adresses contiguës.

La première documentation du système informatique spécifiait la taille de la mémoire avec un nombre exact tel que 4096, 8192 ou 16 384 mots de stockage. Ce sont toutes des puissances de deux , et de plus sont de petits multiples de 2 10 , ou 1024. Au fur et à mesure que les capacités de stockage augmentaient, plusieurs méthodes différentes ont été développées pour abréger ces quantités.

La méthode la plus couramment utilisée aujourd'hui utilise des préfixes tels que kilo, méga, giga et les symboles correspondants K, M et G, que l'industrie informatique a initialement adoptés à partir du système métrique . Les préfixes kilo- et méga- , signifiant 1000 et1 000 000 respectivement, étaient couramment utilisés dans l'industrie électronique avant la Seconde Guerre mondiale. Avec giga- ou G-, ce qui signifie1 000 000 000 , ils sont maintenant connus sous le nom de préfixes SI après le Système international d'unités (SI), introduit en 1960 pour formaliser les aspects du système métrique.

Le Système international d'unités ne définit pas d'unités pour l'information numérique, mais note que les préfixes SI peuvent être appliqués en dehors des contextes où des unités de base ou des unités dérivées seraient utilisées. Mais comme la mémoire principale de l'ordinateur dans un système à adresse binaire est fabriquée dans des tailles qui s'exprimaient facilement en multiples de 1024, le kilo - octet , lorsqu'il est appliqué à la mémoire de l'ordinateur, a fini par être utilisé pour signifier 1024 octets au lieu de 1000. Cet usage n'est pas cohérent avec le SI. La conformité avec le SI exige que les préfixes prennent leur signification basée sur 1000, et qu'ils ne doivent pas être utilisés comme espaces réservés pour d'autres nombres, comme 1024.

L'utilisation de K au sens binaire comme dans un "noyau 32K" signifiant 32 × 1024 mots, c'est-à-dire,32 768 mots, peuvent être trouvés dès 1959. L'article fondateur de Gene Amdahl en 1964 sur IBM System/360 utilisait "1K" pour signifier 1024. Ce style était utilisé par d'autres fournisseurs d'ordinateurs, la description du système CDC 7600 (1968) a fait utilisation intensive de K comme 1024. Ainsi, le premier préfixe binaire est né.

Un autre style consistait à tronquer les trois derniers chiffres et à ajouter K, en utilisant essentiellement K comme préfixe décimal similaire à SI , mais en tronquant toujours au nombre entier inférieur suivant au lieu d'arrondir au plus proche. Les valeurs exactes32 768 mots,65 536 mots et131 072 mots seraient alors décrits comme "32K", "65K" et "131K". (Si ces valeurs avaient été arrondies au plus proche, elles seraient devenues respectivement 33K, 66K et 131K.) Ce style a été utilisé de 1965 à 1975 environ.

Ces deux styles (K = 1024 et troncature) ont été utilisés à peu près à la même époque, parfois par la même entreprise. Dans les discussions sur les mémoires à adresse binaire, la taille exacte était évidente d'après le contexte. (Pour les tailles de mémoire de "41K" et moins, il n'y a pas de différence entre les deux styles.) L' ordinateur en temps réel HP 21MX (1974) a indiqué196 608 (qui est 192×1024) comme "196K" et1 048 576 en tant que « 1M », tandis que l' ordinateur professionnel HP 3000 (1973) pourrait avoir « 64K », « 96K » ou « 128K » octets de mémoire.

La méthode de la « troncature » s'est progressivement estompée. La majuscule de la lettre K est devenue la norme de facto pour la notation binaire, bien que cela ne puisse pas être étendu à des puissances plus élevées, et l'utilisation de la minuscule k a persisté. Néanmoins, la pratique consistant à utiliser le "kilo" inspiré du SI pour indiquer 1024 a ensuite été étendue à "megabyte" signifiant 1024 2 (1 048 576 ) octets, et plus tard " gigaoctet " pour 1024 3 (1 073 741 824 ) octets. Par exemple, un module RAM "512 mégaoctets" fait 512×1024 2 octets (512 ×1 048 576 , ou536 870 912 ), plutôt que512 000 000 .

Les symboles Kbit, Kbyte, Mbit et Mbyte ont commencé à être utilisés comme "unités binaires" - "bit" ou "byte" avec un multiplicateur qui est une puissance de 1024 - au début des années 1970. Pendant un temps, les capacités de mémoire étaient souvent exprimées en K, même lorsque M aurait pu être utilisé : La brochure IBM System/370 Model 158 (1972) indiquait ceci : « La capacité de stockage réelle est disponible par incréments de 512K allant de 512K à 2 048K octets."

Le mégaoctet a été utilisé pour décrire l'adressage à 22 bits du DEC PDP-11 /70 (1975) et le gigaoctet à l'adressage à 30 bits du DEC VAX-11/780 (1977).

En 1998, la Commission électrotechnique internationale IEC a introduit les préfixes binaires kibi, mebi, gibi ... pour signifier 1024, 1024 2 , 1024 3 etc., de sorte que 1048576 octets pourraient être appelés sans ambiguïté 1 mebibyte . Les préfixes CEI ont été définis pour être utilisés avec le Système international des quantités (ISQ) en 2009 .

Disques durs

L'industrie du disque dur a suivi un modèle différent. La capacité du lecteur de disque est généralement spécifiée avec des préfixes d'unité avec une signification décimale, conformément aux pratiques SI. Contrairement à la mémoire principale de l'ordinateur, l'architecture ou la construction du disque n'impose ni ne facilite l'utilisation de multiples binaires. Les lecteurs peuvent avoir n'importe quel nombre pratique de plateaux ou de surfaces, et le nombre de pistes, ainsi que le nombre de secteurs par piste peuvent varier considérablement entre les conceptions.

Le premier lecteur de disque vendu dans le commerce, l' IBM 350 , avait cinquante plateaux de disques physiques contenant un total de 50 000 secteurs de 100 caractères chacun, pour une capacité totale citée de 5 millions de caractères. Il a été introduit en septembre 1956.

Dans les années 1960, la plupart des lecteurs de disque utilisaient le format de longueur de bloc variable d'IBM, appelé Count Key Data (CKD). N'importe quelle taille de bloc peut être spécifiée jusqu'à la longueur de piste maximale. Étant donné que les en-têtes de bloc occupaient de l'espace, la capacité utilisable du lecteur dépendait de la taille du bloc. Les blocs ("enregistrements" dans la terminologie d'IBM) de 88, 96, 880 et 960 étaient souvent utilisés car ils étaient liés à la taille de bloc fixe des cartes perforées à 80 et 96 caractères. La capacité d'entraînement était généralement indiquée dans des conditions de blocage complet des antécédents. Par exemple, le pack de disques 3336 de 100 mégaoctets n'a atteint cette capacité qu'avec une taille de bloc de piste complète de 13 030 octets.

Les disquettes pour IBM PC et compatibles ont rapidement été normalisées sur des secteurs de 512 octets , de sorte que deux secteurs étaient facilement appelés "1K". Les "360 Ko" et "720 Ko" de 3,5 pouces avaient respectivement 720 (simple face) et 1440 secteurs (double face). Lorsque les disquettes haute densité "1,44 Mo" sont arrivées, avec 2880 de ces secteurs de 512 octets, cette terminologie représentait une définition hybride binaire-décimale de "1 Mo" = 2 10 × 10 3 = 1 024 000 octets.

En revanche, les fabricants de disques durs utilisaient des mégaoctets ou Mo , ce qui signifie 10 6 octets, pour caractériser leurs produits dès 1974. En 1977, dans sa première édition, Disk/Trend, l'un des principaux consultants en marketing de l'industrie des disques durs segmentait l'industrie selon en Mo (sens décimal) de capacité.

L'un des premiers disques durs de l'histoire de l'informatique personnelle, le Seagate ST-412 , a été spécifié comme formaté : 10,0 mégaoctets . L'entraînement contient quatre têtes et surfaces actives (pistes par cylindre), 306 cylindres. Lorsqu'il est formaté avec une taille de secteur de 256 octets et 32 ​​secteurs/piste, il a une capacité de10 027 008  octets . Ce lecteur était l'un des nombreux types installés dans l' IBM PC/XT et largement annoncé et signalé comme un lecteur de disque dur "10 Mo" (formaté). Le nombre de cylindres de 306 n'est pas commodément proche d'une puissance de 1024 ; les systèmes d'exploitation et les programmes utilisant les préfixes binaires habituels affichent 9,5625 Mo. De nombreux lecteurs ultérieurs sur le marché des ordinateurs personnels utilisaient 17 secteurs par piste ; plus tard encore, l' enregistrement de bits de zone a été introduit, faisant varier le nombre de secteurs par piste de la piste extérieure à la piste intérieure.

L'industrie du disque dur continue d'utiliser des préfixes décimaux pour la capacité du disque, ainsi que pour le taux de transfert. Par exemple, un disque dur "300 Go" offre un peu plus de300 × 10 9 , ou300 000 000 000 , octets, pas 300 × 2 30 (ce qui correspondrait à environ322 × 10 9 ). Les systèmes d'exploitation tels que Microsoft Windows qui affichent les tailles de disque dur à l'aide du préfixe binaire habituel « Go » (comme il est utilisé pour la RAM) afficheraient cela comme « 279,4 Go » (ce qui signifie 279,4 × 1024 3 octets, ou 279,4 ×1 073 741 824  B ). D'autre part, macOS affiche depuis la version 10.6 la taille du disque dur à l'aide de préfixes décimaux (correspondant ainsi à l'emballage des fabricants de disques). (Les versions précédentes de Mac OS X utilisaient des préfixes binaires.)

Les fabricants de lecteurs de disque utilisent parfois à la fois les préfixes IEC et SI avec leurs significations normalisées. Seagate a spécifié des taux de transfert de données dans certains manuels de certains disques durs avec les deux unités, la conversion entre les unités étant clairement indiquée et les valeurs numériques ajustées en conséquence. Les lecteurs "Advanced Format" utilisent le terme "secteurs 4K", qu'il définit comme ayant une taille de "4096 (4K) octets".

Transfert d'informations et taux d'horloge

Les fréquences d' horloge informatique sont toujours citées en utilisant les préfixes SI dans leur sens décimal. Par exemple, la fréquence d'horloge interne du PC IBM d' origine était de 4,77 MHz, c'est-à-dire4 770 000  Hz . De même, les taux de transfert d'informations numériques sont indiqués à l'aide de préfixes décimaux :

  • L'interface disque ATA-100 fait référence à 100 000 000 octets par seconde
  • Un modem "56K" fait référence à 56 000 bits par seconde
  • SATA-2 a un débit binaire brut de 3 Gbit/s = 3 000 000 000 bits par seconde
  • Transferts de RAM PC2-64006 400 000 000 octets par seconde
  • Firewire 800 a un taux brut de 800 000 000 bits par seconde
  • En 2011, Seagate a spécifié le taux de transfert soutenu de certains modèles de disques durs avec des préfixes décimaux et binaires IEC.

Standardisation des doubles définitions

Au milieu des années 1970, il était courant de voir K signifiant 1024 et occasionnellement M signifiant 1 048 576 pour les mots ou octets de la mémoire principale (RAM) tandis que K et M étaient couramment utilisés avec leur signification décimale pour le stockage sur disque. Dans les années 1980, à mesure que les capacités des deux types d'appareils augmentaient, le préfixe SI G, avec la signification SI, était couramment appliqué au stockage sur disque, tandis que M dans sa signification binaire est devenu courant pour la mémoire informatique. Dans les années 1990, le préfixe G, dans son sens binaire, est devenu couramment utilisé pour la capacité de mémoire de l'ordinateur. Le premier téraoctet (préfixe SI,1 000 000 000 000 octets) disque dur a été introduit en 2007.

Le double usage des préfixes kilo (K), méga (M) et giga (G) en tant que puissances de 1000 et puissances de 1024 a été enregistré dans les normes et les dictionnaires. Par exemple, la norme ANSI/IEEE 1084-1986 de 1986 définissait une double utilisation pour le kilo et le méga.

kilo (K). (1) Un préfixe indiquant 1000. (2) Dans les déclarations impliquant la taille du stockage informatique, un préfixe indiquant 2 10 , ou 1024.

méga (M). (1) Un préfixe indiquant un million. (2) Dans les déclarations impliquant la taille du stockage informatique, un préfixe indiquant 2 20 , ou 1048576.

Les unités binaires Kbyte et Mbyte ont été formellement définies dans ANSI/IEEE Std 1212-1991.

De nombreux dictionnaires ont noté la pratique d'utiliser des préfixes usuels pour indiquer des multiples binaires. Le dictionnaire en ligne d'Oxford définit, par exemple, le mégaoctet comme : « Informatique : une unité d'information égale à un million ou (strictement)1 048 576 octets."

Les unités Kbyte, Mbyte et Gbyte se trouvent dans la presse spécialisée et dans les revues IEEE. Gigabyte a été formellement défini dans IEEE Std 610.10-1994 comme1 000 000 000 ou 2 30 octets. Kilobyte, Kbyte et KB sont des unités équivalentes et toutes sont définies dans la norme obsolète, IEEE 100-2000.

L'industrie du matériel mesure la mémoire système (RAM) en utilisant le sens binaire tandis que le stockage sur disque magnétique utilise la définition SI. Cependant, de nombreuses exceptions existent. L'étiquetage d'un type de disquette utilise le mégaoctet pour désigner 1024 × 1000 octets. Sur le marché des disques optiques, les disques compacts utilisent Mo pour signifier 1024 2 octets tandis que les DVD utilisent Go pour signifier 1000 3 octets.

Utilisation incohérente des unités

Ecart entre les puissances de 1024 et les puissances de 1000

Le stockage informatique est devenu moins cher par unité et donc plus grand, de plusieurs ordres de grandeur depuis que "K" a été utilisé pour la première fois pour signifier 1024. Parce que les significations SI et "binaire" de kilo, méga, etc., sont basées sur des puissances de 1000 ou 1024 plutôt que de simples multiples, la différence entre 1M "binaire" et 1M "décimal" est proportionnellement plus grande que celle entre 1K "binaire" et 1k "décimal", et ainsi de suite sur l'échelle. La différence relative entre les valeurs dans les interprétations binaires et décimales augmente, en utilisant les préfixes SI comme base, de 2,4% pour le kilo à près de 21% pour le préfixe yotta.

Graphique linéaire-log du pourcentage de la différence entre les interprétations décimales et binaires des préfixes d'unité par rapport à la taille de stockage.
Préfixe Binaire ÷ Décimal Décimal ÷ Binaire
kilo- 1,024 (+2,4%)
 
0,9766 (−2,3 %)
 
méga- 1,049 (+4,9%)
 
0,9537 (−4,6 %)
 
giga- 1,074 (+7,4%)
 
0,9313 (−6,9%)
 
téra- 1.100 (+10,0 %)
 
0,9095 (−9,1%)
 
péta- 1,126 (+12,6%)
 
0,8882 (−11,2 %)
 
exa- 1,153 (+15,3%)
 
0,8674 (−13,3%)
 
zetta- 1,181 (+18,1%)
 
0,8470 (−15,3%)
 
tu dois- 1,209 (+20,9%)
 
0,8272 (−17,3%)
 

Confusion des consommateurs

Aux premiers jours de l'informatique (en gros, avant l'avènement des ordinateurs personnels), il y avait peu ou pas de confusion chez les consommateurs en raison de la sophistication technique des acheteurs et de leur familiarité avec les produits. De plus, il était courant que les fabricants d'ordinateurs spécifient leurs produits avec des capacités en toute précision.

À l'ère de l'informatique personnelle, une source de confusion pour les consommateurs est la différence dans la façon dont de nombreux systèmes d'exploitation affichent les tailles de disque dur, par rapport à la façon dont les fabricants de disques durs les décrivent. Les disques durs sont spécifiés et vendus en utilisant « Go » et « To » dans leur sens décimal : un milliard et un billion d'octets. Cependant, de nombreux systèmes d'exploitation et autres logiciels affichent la taille des disques durs et des fichiers en utilisant "Mo", "Go" ou d'autres préfixes d'apparence SI dans leur sens binaire, tout comme ils le font pour les affichages de la capacité de la RAM. Par exemple, de nombreux systèmes de ce type affichent un disque dur commercialisé comme "1 To" comme "931 Go". La première présentation connue de la capacité du disque dur par un système d'exploitation utilisant « Ko » ou « Mo » dans un sens binaire est 1984 ; les systèmes d'exploitation antérieurs présentaient généralement la capacité du disque dur comme un nombre exact d'octets, sans préfixe d'aucune sorte, par exemple, dans la sortie de la commande MS-DOS ou PC DOS CHKDSK .

Litiges juridiques

Les différentes interprétations des préfixes de taille de disque ont conduit à des recours collectifs contre les fabricants de stockage numérique. Ces cas impliquaient à la fois des mémoires flash et des disques durs.

Premiers cas

Les premières affaires (2004-2007) ont été réglées avant toute décision de justice, les fabricants n'admettant aucun acte répréhensible mais acceptant de clarifier la capacité de stockage de leurs produits sur l'emballage du consommateur. En conséquence, de nombreux fabricants de mémoire flash et de disques durs ont des divulgations sur leurs emballages et leurs sites Web clarifiant la capacité formatée des périphériques ou définissant Mo comme 1 million d'octets et 1 Go comme 1 milliard d'octets.

Willem Vroegh contre Eastman Kodak Company

Le 20 février 2004, Willem Vroegh a déposé une plainte contre Lexar Media, Dane-Elec Memory, Fuji Photo Film USA , Eastman Kodak Company, Kingston Technology Company, Inc., Memorex Products, Inc. ; PNY Technologies Inc., SanDisk Corporation , Verbatim Corporation et Viking Interworks alléguant que leurs descriptions de la capacité de leurs cartes mémoire flash étaient fausses et trompeuses.

Vroegh a affirmé qu'un périphérique de mémoire flash de 256 Mo n'avait que 244 Mo de mémoire accessible. "Les plaignants allèguent que les défendeurs ont commercialisé la capacité de mémoire de leurs produits en supposant qu'un mégaoctet équivaut à un million d'octets et qu'un gigaoctet équivaut à un milliard d'octets." Les demandeurs voulaient que les défendeurs utilisent les valeurs habituelles de 1024 2 pour mégaoctet et 1024 3 pour gigaoctet. Les plaignants ont reconnu que les normes IEC et IEEE définissent un MB comme un million d'octets, mais ont déclaré que l'industrie a largement ignoré les normes IEC.

Les parties ont convenu que les fabricants pouvaient continuer à utiliser la définition décimale tant que la définition était ajoutée à l'emballage et aux sites Web. Les consommateurs pourraient demander "une remise de dix pour cent sur un futur achat en ligne sur le dispositif de mémoire flash des magasins en ligne des défendeurs".

Orin Safier c. Western Digital Corporation

Le 7 juillet 2005, une action intitulée Orin Safier c. Western Digital Corporation, et al. a été déposé auprès de la Cour supérieure de la ville et du comté de San Francisco, affaire n° CGC-05-442812. L'affaire a ensuite été transférée dans le district nord de la Californie, affaire n° 05-03353 BZ.

Bien que Western Digital ait soutenu que leur utilisation des unités est conforme à « la norme industrielle incontestablement correcte pour mesurer et décrire la capacité de stockage », et qu'on « ne peut pas s'attendre à ce qu'ils réforment l'industrie du logiciel », ils ont convenu de régler en mars 2006 avec le 14 juin 2006 comme date d'audience d'approbation finale.

Western Digital a proposé de rémunérer les clients avec un téléchargement gratuit de logiciels de sauvegarde et de récupération d'une valeur de 30 USD. Ils ont également payé 500 000 $ en honoraires et frais aux avocats de San Francisco Adam Gutride et Seth Safier, qui ont déposé la plainte. Le règlement demandait à Western Digital d'ajouter une clause de non-responsabilité à son emballage et à sa publicité ultérieurs.

Cho contre Seagate Technology (États-Unis) Holdings, Inc.

Une action en justice (Cho v. Seagate Technology (US) Holdings, Inc., San Francisco Superior Court, Case No. CGC-06-453195) a été déposée contre Seagate Technology , alléguant que Seagate surreprésentait la quantité de stockage utilisable de 7 % sur le disque dur. disques vendus entre le 22 mars 2001 et le 26 septembre 2007. L'affaire a été réglée sans que Seagate n'admette d'acte répréhensible, mais en acceptant de fournir à ces acheteurs un logiciel de sauvegarde gratuit ou un remboursement de 5 % sur le coût des disques.

Dinan et al. contre SanDisk LLC

Le 22 janvier 2020, le tribunal de district du district nord de Californie a statué en faveur du défendeur, SanDisk, confirmant son utilisation de « GB » pour signifier 1 000 000 000  octets .

Préfixes binaires uniques

Premières suggestions

Alors que les premiers informaticiens utilisaient généralement k pour signifier 1000, certains ont reconnu la commodité qui résulterait du travail avec des multiples de 1024 et la confusion qui résultait de l'utilisation des mêmes préfixes pour deux significations différentes.

Plusieurs propositions de préfixes binaires uniques ont été faites en 1968. Donald Morrison a proposé d'utiliser la kappa lettre grecque ( de κ ) pour désigner 1024, κ 2 pour désigner 1024 2 , et ainsi de suite. (À l'époque, la taille de la mémoire était petite et seul K était largement utilisé.) Wallace Givens a répondu en proposant d'utiliser bK comme abréviation pour 1024 et bK2 ou bK 2 pour 1024 2 , bien qu'il ait noté que ni la lettre grecque ni la lettre minuscule b ne serait facile à reproduire sur les imprimantes informatiques de l'époque. Bruce Alan Martin du Brookhaven National Laboratory a en outre proposé que les préfixes soient complètement abandonnés et que la lettre B soit utilisée pour les exposants en base 2, similaire à E en notation scientifique décimale , pour créer des raccourcis comme 3B20 pour 3×2 20 , une convention toujours utilisé sur certaines calculatrices pour présenter les nombres à virgule flottante binaires aujourd'hui.

Aucun de ceux-ci n'a été beaucoup accepté et la majuscule de la lettre K est devenue la norme de facto pour indiquer un facteur de 1024 au lieu de 1000, bien que cela ne puisse pas être étendu aux puissances supérieures.

Au fur et à mesure que l'écart entre les deux systèmes augmentait dans les puissances d'ordre supérieur, davantage de propositions de préfixes uniques ont été faites. En 1996, Markus Kuhn a proposé un système avec des préfixes di , comme le « dikilobyte » (K₂B ou K2B). Donald Knuth , qui utilise la notation décimale comme 1 Mo = 1 000 Ko, s'est dit " étonné " que la proposition de la CEI ait été adoptée, les qualifiant de " drôles " et estimant que les partisans supposaient " que les normes sont automatiquement adoptées simplement parce qu'elles sont là. " Knuth a proposé que les puissances de 1024 soient désignées comme « grands kilo-octets » et « grands mégaoctets » (en abrégé KKB et MMB, car « doubler la lettre connote à la fois le caractère binaire et le caractère large »). Les préfixes doubles étaient déjà abolis dans SI, cependant, ayant un sens multiplicatif (« MMB » équivaudrait à « TB »), et cet usage proposé n'a jamais gagné en popularité.

Préfixes CEI

L'ensemble de préfixes binaires qui ont finalement été adoptés, maintenant appelés « préfixes CEI », ont été proposés pour la première fois par le Comité interdivisionnaire sur la nomenclature et les symboles (IDCNS) de l' Union internationale de chimie pure et appliquée (IUPAC). à cette époque, il a été proposé que les termes kilo-octet et méga-octet ne soient utilisés que pour 10 3 octets et 10 6 octets, respectivement. Les nouveaux préfixes kibi (kilobinary), MEBI (megabinary), gibi (gigabinary) et tebi (terabinary) ont également été proposé à l'époque, et les symboles proposés pour les préfixes étaient kb, Mb, Gb et Tb respectivement, plutôt que Ki, Mi, Gi et Ti. La proposition n'a pas été acceptée à l'époque.

L' Institut des ingénieurs électriciens et électroniciens (IEEE) a commencé à collaborer avec l' Organisation internationale de normalisation (ISO) et la Commission électrotechnique internationale (CEI) pour trouver des noms acceptables pour les préfixes binaires. L'IEC a proposé kibi , mebi , gibi et tebi , avec les symboles Ki, Mi, Gi et Ti respectivement, en 1996.

Les noms des nouveaux préfixes sont dérivés des préfixes SI d'origine combinés avec le terme binaire , mais contractés, en prenant les deux premières lettres du préfixe SI et "bi" de binaire. La première lettre de chacun de ces préfixes est donc identique aux préfixes SI correspondants, à l'exception de "K", qui est utilisé de manière interchangeable avec "k", alors que dans SI, seule la minuscule k représente 1000.

L'IEEE a décidé que ses normes utiliseraient les préfixes kilo , etc. avec leurs définitions métriques, mais a autorisé l'utilisation des définitions binaires dans une période intérimaire tant qu'une telle utilisation était explicitement indiquée au cas par cas.

Adoption par la CEI, le NIST et l'ISO

En janvier 1999, la CEI a publié la première norme internationale ( CEI 60027-2 Amendement 2) avec les nouveaux préfixes, étendus jusqu'à pebi (Pi) et exbi (Ei).

L'amendement 2 de la CEI 60027-2 stipule également que la position de la CEI est la même que celle du BIPM (l'organisme qui réglemente le système SI) ; les préfixes SI conservent leurs définitions en puissances de 1000 et ne sont jamais utilisés pour signifier une puissance de 1024.

Dans l'usage, les produits et concepts généralement décrits à l'aide de puissances de 1024 continueraient de l'être, mais avec les nouveaux préfixes CEI. Par exemple, un module mémoire de536 870 912 octets ( 512 ×1 048 576 ) serait appelé 512 Mio ou 512 mégaoctets au lieu de 512 Mo ou 512 mégaoctets. Inversement, puisque les disques durs ont historiquement été commercialisés en utilisant la convention SI, « giga » signifie1 000 000 000 , un disque dur « 500 Go » serait toujours étiqueté comme tel. Selon ces recommandations, les systèmes d'exploitation et autres logiciels utiliseraient également les préfixes binaires et SI de la même manière, de sorte que l'acheteur d'un disque dur "500 Go" trouverait le système d'exploitation rapportant "500 Go" ou "466 GiB", tandis que536 870 912 octets de RAM seraient affichés sous la forme « 512 MiB ».

La deuxième édition de la norme, publiée en 2000, les définissait uniquement jusqu'à exbi , mais en 2005, la troisième édition a ajouté les préfixes zebi et yobi , faisant ainsi correspondre tous les préfixes SI avec leurs homologues binaires.

La norme harmonisée ISO / IEC IEC 80000-13 :2008 annule et remplace les paragraphes 3.8 et 3.9 de l'IEC 60027-2:2005 (ceux définissant les préfixes des multiples binaires). Le seul changement significatif est l'ajout de définitions explicites pour certaines quantités. En 2009, les préfixes kibi-, mebi-, etc. ont été définis par l' ISO 80000-1 à part entière, indépendamment des kibibyte, mebibyte, etc.

La norme du BIPM JCGM 200:2012 « Vocabulaire international de métrologie – Concepts fondamentaux et généraux et termes associés (VIM), 3e édition » répertorie les préfixes binaires de la CEI et indique que « Les préfixes SI se réfèrent strictement aux puissances de 10, et ne doivent pas être utilisés pour puissances de 2. Par exemple, 1 kilobit ne doit pas être utilisé pour représenter 1024 bits (2 10 bits), soit 1 kibibit."

Unités spécifiques de l'IEC 60027-2 A.2 et de l'ISO/IEC 80000:13-2008
Préfixe CEI Représentations
Nom symbole Base 2 Base 1024 Valeur Base 10
kibi Ki 2 10 1024 1 1024 = 1,024 × 10 3
mebi Mi 2 20 1024 2 1 048 576 ?? 1,049 × 10 6
gibier Gi 2 30 1024 3 1 073 741 824 ?? 1,074 × 10 9
tebi Ti 2 40 1024 4 1 099 511 627 776 ?? 1.100 × 10 12
pebi Pi 2 50 1024 5 1 125 899 906 842 624 ?? 1,126 × 10 15
exbi Ei 2 60 1024 6 1 152 921 504 606 846 976 ?? 1.153 × 10 18
zébi Zi 2 70 1024 7 1 180 591 620 717 411 303 424 ?? 1.181 × 10 21
yobi Yi 2 80 1024 8 1 208 925 819 614 629 174 706 176 ?? 1.209 × 10 24

Autres organismes et organisations de normalisation

Les préfixes binaires de la norme CEI sont désormais pris en charge par d'autres organismes de normalisation et organisations techniques.

L' Institut national des normes et de la technologie des États-Unis (NIST) prend en charge les normes ISO/IEC pour les « préfixes pour les multiples binaires » et dispose d'un site Web les documentant, décrivant et justifiant leur utilisation. Le NIST suggère qu'en anglais, la première syllabe du nom du préfixe binaire multiple devrait être prononcée de la même manière que la première syllabe du nom du préfixe SI correspondant, et que la deuxième syllabe devrait être prononcée comme abeille . Le NIST a déclaré que les préfixes SI "se réfèrent strictement aux puissances de 10" et que les définitions binaires "ne devraient pas être utilisées" pour eux.

L'organisme de normalisation de l'industrie de la microélectronique JEDEC décrit les préfixes IEC dans son dictionnaire en ligne avec une note : « Les définitions de kilo, giga et méga basées sur des puissances de deux ne sont incluses que pour refléter l'usage courant. Les normes JEDEC pour la mémoire à semi-conducteurs utilisent les symboles de préfixe habituels K, M et G au sens binaire.

Le 19 mars 2005, la norme IEEE IEEE 1541-2002 (« Préfixes pour les multiples binaires ») a été élevée au rang de norme d'utilisation complète par l'IEEE Standards Association après une période d'essai de deux ans. Cependant, depuis avril 2008, la division Publications IEEE n'exige pas l'utilisation de préfixes IEC dans ses principaux magazines tels que Spectrum ou Computer .

Le Bureau international des poids et mesures (BIPM), qui maintient le Système international d'unités (SI), interdit expressément l'utilisation de préfixes SI pour désigner des multiples binaires, et recommande l'utilisation des préfixes CEI comme alternative puisque les unités d'information sont non inclus dans le SI.

La Society of Automotive Engineers (SAE) interdit l'utilisation de préfixes SI avec autre chose qu'une puissance de 1000, mais ne recommande ni ne cite les préfixes binaires IEC.

Le Comité européen de normalisation électrotechnique ( CENELEC ) a adopté les préfixes binaires recommandés par la CEI via le document d'harmonisation HD 60027-2:2003-03. L'Union européenne (UE) exige l'utilisation des préfixes binaires IEC depuis 2007.

Pratique courante

La plupart du matériel informatique utilise des préfixes SI pour indiquer la capacité et définir d'autres paramètres de performance tels que le débit de données. Les mémoires principale et cache sont des exceptions notables.

Les capacités de la mémoire principale et de la mémoire cache sont généralement exprimées avec des préfixes binaires habituels. D'autre part, la mémoire flash , comme celle que l'on trouve dans les disques SSD, utilise principalement des préfixes SI pour indiquer la capacité.

Certains systèmes d'exploitation et autres logiciels continuent d'utiliser les préfixes binaires habituels dans les affichages de la mémoire, de la capacité de stockage du disque et de la taille des fichiers, mais les préfixes SI dans d'autres domaines tels que les vitesses de communication réseau et les vitesses de processeur.

Dans les sous-sections suivantes, sauf indication contraire, des exemples sont d'abord donnés en utilisant les préfixes communs utilisés dans chaque cas, puis suivis d'une interprétation utilisant une autre notation, le cas échéant.

Systèmes d'exploitation

Avant la sortie de Macintosh System Software (1984), les tailles de fichiers étaient généralement signalées par le système d'exploitation sans aucun préfixe. Aujourd'hui, la plupart des systèmes d'exploitation signalent la taille des fichiers avec des préfixes.

  • Le noyau Linux utilise des préfixes décimaux et binaires conformes aux normes lors du démarrage. Cependant, de nombreux utilitaires système de type Unix , tels que la commande ls , utilisent des puissances de 1024 indiquées comme K/M (préfixes binaires usuels) s'ils sont appelés avec l' option " -h ". Ils donnent la valeur exacte en octets sinon. Les versions GNU utiliseront également les puissances de 10 indiquées par k/M si elles sont appelées avec l' option " --si ".
  • Microsoft Windows signale la taille des fichiers et les capacités des périphériques de disque en utilisant les préfixes binaires habituels ou, dans une boîte de dialogue "Propriétés", en utilisant la valeur exacte en octets.
  • iOS 10 et versions antérieures, Mac OS X Leopard et versions antérieures et watchOS utilisent le système binaire (1 Go = 1 073 741 824  octets ). Les spécifications des produits Apple, iOS et macOS (y compris Mac OS X Snow Leopard : version 10.6) indiquent désormais les tailles en utilisant les préfixes décimaux SI (1 Go =1 000 000 000 octets).

Logiciel

Depuis février 2010, la plupart des logiciels ne distinguent pas les symboles des préfixes binaires et décimaux. La convention de nommage binaire IEC a été adoptée par quelques-uns, mais elle n'est pas utilisée universellement.

L'un des objectifs déclarés de l'introduction des préfixes IEC était de « préserver les préfixes SI en tant que multiplicateurs décimaux non ambigus ». Des programmes tels que fdisk / cfdisk , parted et apt-get utilisent des préfixes SI avec leur signification décimale.

Exemple d'utilisation des préfixes binaires IEC dans le système d' exploitation Linux affichant le volume de trafic sur une interface réseau en kibioctets (KiB) et en mébioctets (MiB), tel qu'obtenu avec l' utilitaire ifconfig :

eth0      Link encap:Ethernet [...]
          RX packets:254804 errors:0 dropped:0 overruns:0 frame:0
          TX packets:756 errors:0 dropped:0 overruns:0 carrier:0
          [...]
          RX bytes:18613795 (17.7 MiB)  TX bytes:45708 (44.6 KiB)

Le logiciel qui utilise les préfixes binaires IEC pour les puissances de 1024 et utilise les préfixes SI standard pour les puissances de 1000 comprend :

Le logiciel qui utilise les préfixes SI standard pour les puissances de 1000, mais pas les préfixes binaires IEC pour les puissances de 1024, comprend :

  • Mac OS X v10.6 et versions ultérieures pour le disque dur et la taille des fichiers

Le logiciel qui prend en charge les préfixes décimaux pour les puissances de 1000 et les préfixes binaires pour les puissances de 1024 (mais ne suit pas la nomenclature SI ou IEC pour cela) comprend :

  • 4DOS (utilise des lettres minuscules comme lettres décimales et majuscules comme préfixes binaires)

Matériel informatique

Les types de matériel qui utilisent des multiplicateurs de puissance de 1024, tels que la mémoire, continuent d'être commercialisés avec les préfixes binaires habituels.

Mémoire d'ordinateur

Les La capacité de 536 870 912 octets ( 512 × 2 20^ ) de ces modules RAM est indiquée comme « 512 Mo » sur l'étiquette.

Les mesures de la plupart des types de mémoire électronique tels que la RAM et la ROM sont données à l'aide des préfixes binaires habituels (kilo, méga et giga). Cela inclut certaines mémoires flash , comme les EEPROM . Par exemple, un module mémoire "512 mégaoctets" fait 512 × 2 20^ octets (512 ×1 048 576 , ou536 870 912 ).

JEDEC Solid State Technology Association, l'organisme de normalisation de l'ingénierie des semi-conducteurs de l'Electronic Industries Alliance (EIA), continue d'inclure les définitions binaires habituelles du kilo, du méga et du giga dans son document Termes, définitions et symboles de lettres , et utilise ces définitions ultérieurement. normes de mémoire (Voir aussi normes de mémoire JEDEC .)

De nombreuses tâches de programmation informatique référencent la mémoire en termes de puissances de deux en raison de la conception binaire inhérente des systèmes d'adressage matériels actuels. Par exemple, un registre de processeur de 16 bits peut référencer au plus 65 536 éléments (octets, mots ou autres objets) ; ceci est commodément exprimé sous forme d'éléments "64K". Un système d'exploitation peut mapper la mémoire en pages de 4096 octets , auquel cas exactement 8192 pages pourraient être allouées dans33 554 432 octets de mémoire : « 8K » (8192) pages de « 4 kilo-octets » (4096 octets) chacune dans « 32 mégaoctets » (32 Mio) de mémoire.

Disques durs

Tous les fabricants de disques durs indiquent la capacité à l'aide des préfixes SI .

Lecteurs flash

Les lecteurs flash USB , les cartes mémoire flash comme CompactFlash ou Secure Digital , et les disques SSD (Solid -State) basés sur flash utilisent des préfixes SI ; par exemple, une carte flash "256 Mo" fournit au moins 256 millions d'octets (256 000 000 ), pas 256×1024×1024 (268 435 456 ). Les puces de mémoire flash à l'intérieur de ces appareils contiennent considérablement plus que les capacités citées, mais tout comme un disque dur traditionnel, un espace est réservé aux fonctions internes du lecteur flash. Il s'agit notamment du nivellement de l'usure , de la correction des erreurs, de l' épargne et des métadonnées nécessaires au micrologiciel interne de l'appareil.

Lecteurs de disquettes

Les disquettes ont existé dans de nombreux formats physiques et logiques et ont été dimensionnées de manière incohérente. Cela s'explique en partie par le fait que la capacité de l'utilisateur final d'un disque particulier est fonction du matériel du contrôleur, de sorte que le même disque peut être formaté selon diverses capacités. Dans de nombreux cas, les supports sont commercialisés sans aucune indication de la capacité de l'utilisateur final, comme par exemple, DSDD, c'est-à-dire double face double densité.

La dernière disquette largement adoptée était la haute densité 3½ pouces. Celui-ci a une capacité formatée de1 474 560 octets ou 1440 Ko (1440 × 1024, en utilisant "KB" dans le sens binaire habituel). Ceux-ci sont commercialisés en tant que "HD", ou "1,44 Mo" ou les deux. Cette utilisation crée une troisième définition de « mégaoctet » en tant que 1000 × 1024 octets.

La plupart des systèmes d'exploitation affichent la capacité en utilisant "Mo" dans le sens binaire habituel, ce qui donne un affichage de "1.4 Mo" (1,406 25  MiB ). Certains utilisateurs ont remarqué les 0,04 Mo manquants et Apple et Microsoft ont tous deux des bulletins d'assistance les qualifiant de 1,4 Mo.

L'ancienne disquette "1200 Ko" (1200 × 1024 octets) de 5¼ pouces vendue avec l' IBM PC AT était commercialisée sous le nom de "1.2 Mo" (1,171 875  MiB ). Les plus grands formats de disquettes de 8 pouces pouvaient contenir plus d'un mégaoctet, et les capacités de ces périphériques étaient souvent irrégulièrement spécifiées en mégaoctets, également sans controverse.

Les formats de disquette plus anciens et plus petits étaient généralement identifiés comme un nombre précis de Ko (binaires), par exemple, le disque Apple II décrit comme "140 Ko" avait une capacité de 140 × 1024 octets, et le disque original "360 Ko" double face, double densité Le lecteur utilisé sur le PC IBM avait une capacité de 360 ​​× 1024 octets.

Dans de nombreux cas, le matériel de disquette était commercialisé sur la base d'une capacité non formatée, et la surcharge requise pour formater les secteurs sur le support réduirait également la capacité nominale (et cette surcharge variait généralement en fonction de la taille des secteurs formatés), entraînant davantage d'irrégularités.

Disques optiques

Les capacités de la plupart des supports de stockage sur disque optique tels que DVD , Blu-ray Disc , HD DVD et magnéto-optique (MO) sont données à l'aide de préfixes décimaux SI. Un DVD "4,7 Go" a une capacité nominale d'environ 4,38  Gio . Cependant, les capacités CD sont toujours données en utilisant les préfixes binaires habituels. Ainsi , un « 700 Mo » (ou « 80 minutes ») CD a une capacité nominale d'environ 700  MiB (environ 730 Mo).

Lecteurs de bande et supports

Les fabricants de lecteurs de bande et de supports utilisent des préfixes décimaux SI pour identifier la capacité.

Transmission de données et fréquences d'horloge

Certaines unités sont toujours utilisées avec les préfixes décimaux SI, même dans des contextes informatiques. Deux exemples sont hertz (Hz), qui est utilisé pour mesurer les fréquences d'horloge des composants électroniques, et à bit/s et B/s, qui sont utilisés pour mesurer la vitesse de transmission de données .

  • Un processeur 1 GHz reçoit 1 000 000 000 ticks d'horloge par seconde.
  • Un fichier son échantillonné à 44,1 kHz a44 100 échantillons par seconde.
  • UNE 128 kbit/s flux MP3 consomme128 000 bits (16 kilo-octets,15,6 Kio ) par seconde.
  • UNE Une connexion Internet 1 Mbit/s peut transférer1 000 000 bits par seconde (125 000 octets par seconde ≈122 Kio/s , en supposant un octet de 8 bits et aucun surcoût)
  • UNE La connexion Ethernet 1 Gbit/s peut transférer à une vitesse nominale de1 000 000 000 bits par seconde (125 000 000 octets par seconde ≈119 MiB/s , en supposant un octet de 8 bits et aucun surcoût)
  • Un modem 56k transfère56 000 bits par seconde ≈6,8 Kio/s .

Les vitesses d'horloge du bus et donc les bandes passantes sont toutes deux indiquées à l'aide de préfixes décimaux SI.

  • Mémoire PC3200 sur un bus à double débit , transférant 8 octets par cycle avec une vitesse d'horloge de200 MHz (200 000 000 cycles par seconde) a une bande passante de200 000 000 × 8 × 2 =3 200 000 000 B/s =3,2  Go/s (environ3,0 Gio/s ).
  • Un bus PCI-X à66 MHz (66 000 000 cycles par seconde), 64 bits par transfert, a une bande passante de66 000 000 transferts par seconde × 64 bits par transfert =4 224 000 000 bit/s, ou528 000 000 B/s, généralement cité comme528  Mo/s (environ503 Mio/s ).

Utilisation par l'industrie

Les préfixes IEC sont utilisés par Toshiba , IBM , HP pour annoncer ou décrire certains de leurs produits. D'après une brochure HP [3], "[a]fin de réduire la confusion, les fournisseurs recherchent l'un des deux remèdes suivants : ils remplacent les préfixes SI par les nouveaux préfixes binaires, ou ils recalculent les nombres sous forme de puissances de dix." Le centre de données IBM utilise également des préfixes IEC pour réduire la confusion. Le guide de style IBM lit

Pour éviter les inexactitudes (en particulier avec les préfixes les plus grands) et les ambiguïtés potentielles, la Commission électrotechnique internationale (CEI) a adopté en 2000 un ensemble de préfixes spécifiquement pour les multiplicateurs binaires (voir CEI 60027-2). Leur utilisation est maintenant soutenue par le National Institute of Standards and Technology (NIST) des États-Unis et intégrée à la norme ISO 80000. Ils sont également requis par la législation de l'UE et dans certains contextes aux États-Unis. Cependant, la plupart des documents et des produits de l'industrie continuent d'utiliser des préfixes SI lorsqu'ils se réfèrent aux multiplicateurs binaires. Dans la documentation du produit, suivez la même norme que celle utilisée dans le produit lui-même (par exemple, dans l'interface ou le micrologiciel). Que vous choisissiez d'utiliser les préfixes IEC pour les puissances de 2 et les préfixes SI pour les puissances de 10, ou d'utiliser les préfixes SI dans un double objectif... soyez cohérent dans votre utilisation et expliquez à l'utilisateur votre système adopté.

Voir également

Définitions

Les références

Lectures complémentaires

Liens externes