Que unidades de tamanho de arquivo usam os aplicativos no Ubuntu?

11

Tenho notado que aplicativos diferentes usam unidades diferentes ou significam coisas diferentes por eles.

Por exemplo, me deparei com kB , KB , KiB , Kb e K . Quantos bytes cada uma dessas unidades representa?

Se houver definições diferentes para essas unidades, quais usam quais aplicativos?

    
por Flimm 27.11.2012 / 18:00

1 resposta

18

Introdução:

Os dados em computadores eletrônicos são armazenados e transmitidos de várias maneiras, mas são sempre interpretados como uma sequência de valores binários, 0 ou 1. Um valor binário é chamado de bit. Oito bits é chamado de octeto ou byte. Sobre isso, há consenso.

Um bit é indicado como b e um byte como B . Nesse ponto, há consenso e, se você encontrar um aplicativo quebrando essa convenção, é definitivamente um erro ou um erro. As pessoas frequentemente confundem os dois, mas os desenvolvedores de aplicativos e os fabricantes em geral não o fazem.

Quando você chega a unidades maiores, existem duas escolas de pensamento, o que, infelizmente, significa que não há consenso. Diferentes sistemas operacionais e diferentes aplicações pertencem a uma escola de pensamento ou outra.

Política de unidade do Ubuntu:

O Ubuntu publicou uma política de unidades , que define unidades como esta.

O primeiro conjunto de unidades é múltiplo de 1024. (Por que 1024? Porque 1024 é 2 à potência de 10, o que pode facilitar a vida de programadores.) Esse conjunto de unidades é chamado de unidades binárias ou prefixos IEC, após o padrão IEC que os definiu:

  • Um kibibyte : 1KiB = 1024 bytes (observe o K maiúsculo)
  • Um mebibyte : 1MiB = 1024KiB = 1048576 bytes
  • Um gibibyte : 1GiB = 1024MiB = 1048576KiB = 1073741824 bytes

O segundo conjunto de unidades é múltiplo de 1000. Isso se alinha muito mais de perto com as unidades comumente usadas no sistema SI, como medidores, litros e gramas. Um quilograma é de 1000 gramas; Da mesma forma, um kilobyte é de 1000 bytes. Este conjunto de unidades é chamado de unidades decimais ou os prefixos do SI.

  • Um kilobyte : 1kB = 1000 bytes (observe o k minúsculo)
  • Um megabyte : 1MB = 1000kB = 1000000 bytes
  • Um gigabyte : 1GB = 1000MB = 1000000kB = 1000000000 bytes

As unidades tradicionais:

Tradicionalmente, muitos aplicativos, sistemas operacionais e desenvolvedores usavam unidades binárias, dando a elas nomes SI. O Ubuntu, o GNOME e o OS X tentam seguir os padrões publicados, conforme explicado anteriormente, no entanto, o Microsoft Windows e muitos utilitários UNIX ainda usam essas unidades tradicionais, portanto, você precisa estar ciente deles.

  • Um kilobyte : 1KB = 1024 bytes (observe o K maiúsculo)
  • Um megabyte : 1MB = 1024KB = 1048576 bytes
  • Um gigabyte : 1GB = 1024MB = 1048576KB = 1073741824 bytes

Tradicionalmente, no entanto, as velocidades são especificadas em bits por segundo, com os prefixos SI! Então, 1Mbps é na verdade, 1000000 bits por segundo, que é 125000 bytes por segundo, mesmo no Microsoft Windows.

Como evitar a ambigüidade:

Como você pode ver, essas definições conflitantes levam a muita confusão. Quando digo 1MB , quero dizer um milhão de bytes, ou eu quero dizer 1048576 bytes?

Para evitar ambiguidades, você deve usar uma destas estratégias:

  • Use os prefixos IEC exclusivamente. 1MiB é sempre inequívoco.
  • Inclua uma conversão no número de bytes. Por exemplo: 1MB ou 1000000 bytes
  • Use os prefixos IEC e SI, por exemplo: 1MiB ou 1,048MB aprox. Eu prefiro esta solução, pois ela deixa claro o que você quer dizer, e o leitor não precisa realizar cálculos mentais.

Onde há ambigüidade, aqui está um bom conjunto de regras que me serviram bem:

  • Se você identificar KB (com um K maiúsculo), então as unidades tradicionais provavelmente estão sendo usadas.
  • Se você identificar kB (com um k minúsculo), então as unidades SI provavelmente estão sendo usadas.
  • Se o número estiver descrevendo uma velocidade, as unidades decimais provavelmente estão sendo usadas.
  • Se o número estiver no OS X, em aplicativos modernos do Ubuntu ou GNOME, provavelmente unidades decimais estão sendo usadas.
  • Se o número estiver em um disco rígido ou em outro equipamento de computação, as unidades decimais provavelmente estão sendo usadas.
  • Se o número for de um utilitário de linha de comando no Linux, provavelmente as unidades binárias tradicionais estão sendo usadas.
  • Se o número for de um aplicativo do Microsoft Windows, as unidades binárias tradicionais provavelmente estão sendo usadas.

Quando se trata de aplicativos Ubuntu, dê uma olhada em esta lista especificando quais aplicativos usam qual sistema .

Referências:

por Flimm 27.11.2012 / 18:00