web-dev-qa-db-fra.com

Quelles unités de taille de fichier les applications sous Ubuntu utilisent-elles?

J'ai remarqué que différentes applications utilisent différentes unités ou signifient différentes choses par elles.

Par exemple, j'ai rencontré kB, KB, KiB, Kb et K. Combien d'octets chacune de ces unités représente-t-elle?

S'il existe différentes définitions pour ces unités, quelles applications utilisent-elles?

13
Flimm

Introduction:

Les données des ordinateurs électroniques sont stockées et transmises de différentes manières, mais elles sont toujours interprétées comme une séquence de valeurs binaires, 0 ou 1. Une valeur binaire est appelée bit. Huit bits sont appelés octets ou octets. Sur ce point, il y a consensus.

Un bit est désigné par b et un octet par B. Il existe un consensus sur ce point, et si jamais vous repérez une application qui enfreint cette convention, il s'agit certainement d'un bogue ou d'une erreur. Les gens confondent souvent les deux, mais les développeurs d'applications et les fabricants, dans l'ensemble, ne le font pas.

Une fois que vous arrivez dans des unités plus grandes, il existe deux écoles de pensée, ce qui signifie malheureusement qu’il n’ya pas de consensus. Différents systèmes d'exploitation et différentes applications appartiennent à une école de pensée ou à une autre.


La politique de l'unité Ubuntu:

Ubuntu a publié un politique des unités , qui définit des unités comme celle-ci.

Le premier ensemble d'unités est un multiple de 1024. (Pourquoi 1024? Parce que 1024 équivaut à 2 pour la puissance 10, ce qui simplifie la vie des programmeurs.) Cet ensemble d'unités s'appelle des unités binaires ou IEC préfixes, après le norme CEI qui les ont définis:

  • Un kilo-octet : 1KiB = 1024 octets (notez le K majuscule)
  • Un mégaoctet : 1MiB = 1024KiB = 1048576 octets
  • Un gibibyte : 1GiB = 1024MiB = 1048576KiB = 1073741824 octets

Le deuxième ensemble d'unités est un multiple de 1000. Cela correspond beaucoup plus étroitement aux unités couramment utilisées dans le système SI, telles que les compteurs, les litres et les grammes. Un kilogramme, c'est 1000 grammes; De la même manière, un kilo-octet est égal à 1000 octets. Cet ensemble d'unités est appelé unités décimales ou préfixes SI.

  • Un kilo-octet : 1kB = 1000 octets (notez k minuscule)
  • Un mégaoctet : 1MB = 1000kB = 1000000 octets
  • Un gigaoctet : 1GB = 1000MB = 1000000kB = 1000000000 octets

Les unités traditionnelles:

Traditionnellement, de nombreuses applications, systèmes d'exploitation et développeurs utilisaient des unités binaires, en leur donnant des noms SI. Ubuntu, GNOME et OS X tentent tous de respecter les normes publiées, comme expliqué précédemment. Cependant, Microsoft Windows et de nombreux utilitaires UNIX utilisent toujours ces unités traditionnelles. Vous devez donc en prendre conscience.

  • Un kilo-octet : 1KB = 1024 octets (notez le K majuscule)
  • Un mégaoctet : 1MB = 1024KB = 1048576 octets
  • Un gigaoctet : 1GB = 1024MB = 1048576KB = 1073741824 octets

Cependant, traditionnellement, les vitesses sont spécifiées en bits par seconde, avec les préfixes SI! Donc, 1 Mbps correspond en réalité à 1 000 bits par seconde, soit 125 000 octets par seconde, même sous Microsoft Windows.


Comment éviter l'ambiguïté:

Comme vous pouvez le constater, ces définitions contradictoires créent beaucoup de confusion. Quand je dis 1MB, est-ce que je veux dire un million d'octets ou 1048576 octets?

Pour éviter toute ambiguïté, vous devez utiliser l'une de ces stratégies:

  • Utilisez exclusivement les préfixes IEC. 1MiB est toujours sans ambiguïté.
  • Inclure une conversion en nombre d'octets. par exemple: 1 Mo ou 1000000 octets
  • Utilisez les préfixes IEC et SI, par exemple: 1 Mo ou 1,048 Mo environ. Je préfère cette solution, car elle indique clairement ce que vous voulez dire et ne permet pas au lecteur de faire des calculs mentaux.

Là où il y a de l'ambiguïté, voici un bon ensemble de règles empiriques qui m'ont bien servi:

  • Si vous repérez KB (avec un K majuscule), les unités traditionnelles sont probablement utilisées.
  • Si vous repérez kB (avec une minuscule k), les unités SI sont probablement utilisées.
  • Si le nombre décrit une vitesse, les unités décimales sont probablement utilisées.
  • Si le numéro est sur OS X, sur des applications Ubuntu ou GNOME modernes, des unités décimales sont probablement utilisées.
  • Si le numéro figure sur un disque dur ou un autre équipement informatique, des unités décimales sont probablement utilisées.
  • Si le numéro provient d'un utilitaire de ligne de commande sous Linux, les unités binaires traditionnelles sont probablement utilisées.
  • Si le numéro provient d'une application Microsoft Windows, les unités binaires traditionnelles sont probablement utilisées.

En ce qui concerne les applications Ubuntu, regardez cette liste spécifiant quelles applications utilisent quel système .

Références:

20
Flimm