22 - 1609 - diolinux - GB ou GiB
TutoriaisTecnologia

GB ou GiB? Tudo o que você sempre quis saber sobre tamanhos de arquivos

Você já deve ter notado por aí a informação de tamanhos de arquivos ou de unidades de armazenamento expressos em gibibyte (GiB) no lugar do tradicional gigabyte (GB). Ambos medem quantidade de dados ocupados ou quantidade de armazenamento disponível, mas um é menor que o outro.

Neste artigo você vai entender porque essa mudança de medida é importante nos dias atuais e a diferença entre elas.

MiB x MB, GiB x GB… qual a diferença?

O problema está na matemática, nossa matéria favorita na escola, não é verdade? 💔 Em algum momento na história, os humanos acharam mais conveniente fundamentar suas contas usando o total de dedos das mãos como referência e assim foi desenvolvida a base decimal. Mas alguns povos usavam outras bases, como os maias, por exemplo, que usavam a base 20.

Nós crescemos acostumados com o sistema numérico decimal, o mais usado atualmente em todo o mundo e estamos muito acostumados com o sistema métrico de distâncias e massas, fundamentados também na base 10 (metro, quilômetro, grama, quilograma). Sabendo disso, os fabricantes de discos rígidos procuram usar o sistema métrico decimal em suas embalagens e etiquetas para o consumidor associar melhor (ou não).

No entanto, os computadores são fundamentados na base 2, binária. Assim, quando usamos a definição matemática de bilhão, que é 1.000³, na base decimal chegamos ao valor de 1.000.000.000. Já na base binária, o valor matemático de bilhão na verdade é 1024³ = 1.073.741.824.

Mas por que 1.024 e não 1.000? Porque assim como na base decimal para chegar no primeiro número da ordem dos milhares você precisa usar 10³ = 1000 (primeiro número dos milhares), na base 2 para chegar no mesmo lugar equivalente você precisa usar 2¹º = 1024 (primeiro número dos milhares da base binária).

Base210
Conceito de mil2¹º1.024
Total10³1.000
Conceito de milhão1.024²1.000²
Total1.048.5761.000.000
Conceito de bilhão1.024³1.000³
Total (diferença de aprox. 7%)1.073.741.8241.000.000.000
Comparativo entre base binária e base decimal

Quando as unidades de medidas andavam na casa dos megabytes, ninguém ligava muito para essa diferença. Mas na década de 2000, quando a maior parte dos discos rígidos já eram vendidos na ordem dos gigabytes, a diferença de medida começou a ser significativa. A cada 10 GB vendidos, o consumidor perdia cerca de 700 MB.

Essa diferença ficava bem clara ao consultar o sistema operacional, que mostrava os valores corretamente em base 2. Por isso, empresas como Seagate e Western Digital começaram a ser processadas nos Estados Unidos, o que por fim levou a uma padronização técnica de nomenclatura.

Desta forma, adotou-se que ao se usar kibibyte (KiB), mebibyte (MiB), gibibyte (GiB), tebibyte (TiB)… estamos inequivocamente usando a base binária. Já ao se usar as tradicionais medidas kilobyte, megabyte, gigabyte, terabyte, poderá estar se referindo à base binária ou a base decimal, a depender do contexto.

Por exemplo, como essas medidas são definidas pela IEC – International Electrotechnical Commission (uma espécie de ABNT lá nos EUA), se engenheiros estiverem falando em megabytes (MB), pois usam amplamente as definições da IEC, estarão sem dúvida usando a base decimal. Mas se numa conversa de entusiastas de tecnologia, onde esse detalhamento não é tão importante, pode ser que essa mesma medida se refira à base binária.

Para alinhar o entendimento, tenha em mente que antes do KB ou KiB, temos o byte em si, que é expresso pela medida B (letra B maiúscula), e que um byte é composto por 8 bits, expresso por b (letra b minúscula). O bit sim é a base binária, pois nele só pode haver dois valores matemáticos: 0 ou 1. Assim, 1 byte contém 8 bits (1 B = 8 b).

Na tabela a seguir, temos um comparativo entre as medidas de volume de dados na base decimal e binária. Note como a diferença vai se tornando cada vez mais significativa à medida que falamos de grandes volumes de dados.

Decimal
Nomenclatura – siglaBaseBytes
Kilobyte – KB1.000¹1.000
Megabyte – MB1.000²1.000.000
Gigabyte – GB1.000³1.000.000.000
Terabyte – TB1.000⁴1.000.000.000.000
Petabyte – PB1.000⁵1.000.000.000.000.000
Exabyte – EB1.00061.000.000.000.000.000.000
Zettabyte – ZB1.00071.000.000.000.000.000.000.000
Yottabyte – YB1.00081.000.000.000.000.000.000.000.000
Binário
Nomenclatura – siglaBaseBytes
Kibibyte – KiB1.024¹1.024
Mebibyte – MiB1.024²1.048.576
Gibibyte – GiB1.024³1.073.741.824
Tebibyte – TiB1.024⁴1.099.511.627.776
Pebibyte – PiB1.024⁵1.125.899.906.842.624
Exbibyte – EiB1.02461.152.921.504.606.846.976
Zebibyte – ZiB1.02471.180.591.620.717.411.303.424
Yobibyte – YiB1.02481.208.925.819.614.629.174.706.176
Comparativo de grandezas métricas decimais e binárias

Observando essa tabela, fica clara  a importância deste conceito. Hoje facilmente compramos computadores com “1 TB” de armazenamento e se isso não estiver bem esclarecido, o consumidor poderá ser enganado perdendo cerca de 10 GB de armazenamento (99.511.627.776 bytes, grifado na tabela).

Agora fazendo um comparativo puramente matemático, a tabela a seguir mostra a diferença entre a base decimal e a base binária para chegar nos equivalentes kilo, mega, giga, tera e peta. Note que a potência da base binária começa a ficar muito maior que a potência da base decimal para se conseguir o valor equivalente. Como destacado nesta página do IEC, enquanto na escala exa do sistema métrico (um quintilhão) temos 1018, o equivalente na base binária é 260.

Decimal métrico (kilo, mega, giga)
GrupoBaseBytes
Unidade10º1
Dez10¹10
Cem10²100
Mil (kilo)10³1.000
Dez mil10⁴10.000
Cem mil10⁵100.000
Um milhão (mega)1061.000.000
Dez milhões10710.000.000
Cem milhões108100.000.000
Um bilhão (giga)1091.000.000.000
Um trilhão (tera)10121.000.000.000.000
Um quatrilhão (peta)10151.000.000.000.000.000
Binário equivalente
Nomenclatura – siglaBaseByte
Byte1
Primeiro decimal2416
Primeiro centesimal27128
Primeiro milhar (kilo)2101.024
Primeira dezena de milhar21416.384
Primeira centena de milhar214131.072
Primeiro milhão2201.048.576
Primeira dezena de milhão22416.777.216
Primeira centena de milhão227134.217.728
Primeiro bilhão2301.073.741.824
Primeiro trilhão2401.099.511.627.776
Primeiro quatrilhão2501.125.899.906.842.620

Confusão entre os Sistemas Operacionais

Algumas distribuições Linux já apresentam a nomenclatura binária uniformemente, como a OpenSUSE Tumbleweed, que mostra e calcula tudo em binário tanto no modo gráfico quanto no terminal. Outras podem conter diferenças, como o Fedora 36, que no GNOME mostra e calcula em decimal e no terminal calcula em binário, mas mostra a nomenclatura decimal. No Windows, o cálculo é feito corretamente em binário, mas apresenta a nomenclatura decimal.

No Linux, claro que você pode checar o tamanho de arquivos no modo gráfico facilmente, mas se estiver no modo texto, poderá rapidamente usar um dos exemplos a seguir, onde -l é para apresentar em listagem completa e o -h é para apresentar no “modo humano”, usando a nomenclatura binária (ou não 😅)

$> ls -l nomedoarquivo
$> ls -lh nomedoarquivo
$> du nomedoarquivo
$> du -h nomedoarquivo

Conclusão

A tradicional medição em base 10, comumente escrita KB, MB, GB, TB, não é exata para medir volume de dados, pois os computadores utilizam base 2 (binária). Por isso, a IEC definiu a nomenclatura binária acrescentando um “i” no meio das siglas tradicionais (KiB, MiB, GiB, TiB).

Agora você já sabe verificar o real tamanho de seu HD, pendrive ou memória caso eles venham com a nomenclatura decimal e como essa diferença é mais significativa quando falamos de gibibytes para cima.

Além disso, ganhou um novo trava-línguas para brincar. Tente falar bem rápido:

– tebibyte, pebibyte, exbibyte

– exbibyte, tebibyte, pebibyte,

– pebibyte, tebibyte, exbibyte

Diolinux Ofertas - Aproveite os melhores descontos em diversos produtos!