Converter GB para KiB

GB
976562,5KiB

1 GB = 976562,5 KiB

Digite um valor e a conversão de gigabyte para kibibyte se atualiza enquanto você escreve. O fator exibido é 976562,5: é isso que corresponde em KiB a 1 GB. O cálculo é feito no seu próprio aparelho, e o valor digitado não é enviado para um servidor.

  • Onde roda No seu navegador. O número que você digita nunca faz parte de uma requisição.
  • Exato por definição 1 GB é exatamente 976562,5 KiB — uma definição, não um fator arredondado.
  • Responde enquanto você digita Sem botão, sem espera. A resposta já está na página antes de qualquer script rodar.

gigabyte para kibibyte na prática

  • 64 GB is 62500000 KiB

    — um celular simples.

  • 1000 GB is 976600000 KiB

    — um disco vendido como de um terabyte.

  • 0,0005243 GB is 512 KiB

    — meio mebibyte.

  • 0,000004096 GB is 4 KiB

    — uma página de memória em quase todos os sistemas.

gigabyte e kibibyte num relance

Cada número desta tabela é calculado a partir da mesma definição que a calculadora usa, então a tabela não tem como divergir da resposta acima.
GBKiB
1976562,5
21953125
54882812,5
109765625
5048828125
10097656250
500488281250
1000976562500

gigabyte e kibibyte

Um gigabyte é um bilhão de bytes, no sentido decimal usado pelos fabricantes de disco, pelos planos de dados e pelos tamanhos de vídeo.

Um kibibyte são exatamente 1.024 bytes. O nome foi introduzido em 1998 para que «kilobyte» pudesse voltar a significar 1.000, embora o costume nunca tenha pegado de vez.

O que custa arredondar o fator

O fator é 976562,5, e quase ninguém carrega isso na cabeça. Arredondado para 980000 ele erra 0,35 % — invisível em números pequenos, e já uma unidade inteira por volta de 1.000 GB.

É esse o número que interessa antes de arredondar: não o erro em si, mas a partir de onde ele deixa de ser desprezível. Abaixo disso o fator curto é o sensato; acima, use o campo lá em cima, que só arredonda na hora de escrever.

KiB é a unidade binária

Um KiB são 1.024 da unidade de baixo; um kB, 1.000. Nesta página isso é a diferença entre 0 GB e 0 GB — 2,4 % — e a distância cresce a cada degrau: por isso é arredondamento desprezível numa foto e um pedaço visível de um HD.

O mistério do espaço que some é inteiro isso. Um disco vendido como um terabyte tem exatamente o que diz em unidades decimais; o Windows reconta em unidades binárias e mantém o nome decimal, então o número encolhe sem que nada tenha se perdido. O macOS conta em unidades decimais desde o 10.6, e é por isso que o mesmo disco pode aparecer com dois tamanhos em dois computadores.

O meio bloco no fim de 976.562,5

Um gigabyte são 1.000.000.000 bytes e um kibibyte são 1.024, então a razão é exatamente 976.562,5. O meio não é artefato de arredondamento e não desaparece com mais precisão: um gigabyte decimal não é um número inteiro de kibibytes, porque 10 elevado a 9 não tem fator de 1.024 nele. Toda cifra ímpar de gigabytes convertida em blocos cai num meio.

Isso importa onde a ferramenta receptora quer um inteiro, que é a maioria delas. Arredondar para cima dá ao usuário um pouco mais do que foi prometido, para baixo um pouco menos, e truncar — o que uma divisão inteira ingênua faz — silenciosamente faz o segundo. Numa cota isso é uma diferença de 512 bytes e ninguém percebe; numa asserção de teste é a diferença entre passar e não passar.

As ferramentas que ainda contam em blocos de 1 KiB

O GNU df sem argumentos imprime blocos de 1 KiB. du -k faz o mesmo. quota, repquota e setquota contabilizam em unidades de 1 KiB. vmstat relata memória em blocos de 1.024 bytes. Essas interfaces foram desenhadas quando um disco era medido em megabytes e uma contagem de blocos cabia confortavelmente numa coluna, e não mudaram porque todo script que as analisa quebraria.

O resultado é que um volume moderno é descrito por um número de nove dígitos. Um sistema de arquivos de 2 TB são 1.953.125.000 blocos. Isso é ilegível por design e preciso por acidente, e é o motivo pelo qual esta conversão é feita muito mais por scripts do que por pessoas — o que por sua vez é por que acertar a constante uma vez, numa variável com nome, vale mais do que memorizá-la.

Definindo uma cota a partir de uma cifra em gigabytes

Uma cota quase sempre é acordada em gigabytes decimais, porque é essa a unidade em que o acordo foi escrito: cinquenta gigabytes por usuário, quinhentos por projeto. O setquota quer blocos. A multiplicação é 976.562,5 por gigabyte, então cinquenta gigabytes são 48.828.125 blocos e quinhentos são 488.281.250 — os dois inteiros, porque o meio dobra em cada cifra par.

Os limites brando e rígido então precisam do mesmo tratamento e geralmente recebem tratamentos diferentes. Um limite brando derivado de uma cifra redonda em gigabytes e um limite rígido definido somando «dez por cento» à contagem de blocos são duas conversões com duas decisões de arredondamento, e a lacuna entre eles para de ser os dez por cento que alguém pretendia. Converta uma vez, depois calcule os dois limites a partir da cifra de blocos.

Blocos de cota e blocos de sistema de arquivos são unidades diferentes

Contabilidade de cota trabalha em unidades de 1 KiB quase universalmente. O sistema de arquivos por baixo aloca em blocos de 4 KiB por padrão no ext4 e na maioria dos volumes modernos. Essas são duas quantidades diferentes, e um usuário consome a segunda enquanto é cobrado na primeira, então o uso de cota é relatado como quatro vezes a contagem de blocos para cada arquivo que ocupa uma única unidade de alocação.

Para um diretório pessoal de documentos comuns, o efeito é alguns por cento. Para um diretório com muitos arquivos pequenos, é o termo dominante: mil arquivos de 1 kB são um megabyte de conteúdo e cerca de quatro megabytes de cota. Quando alguém insiste que está abaixo do limite e a ferramenta discorda, isso é a primeira coisa a checar, e não tem nada a ver com a questão decimal-contra-binário.

BLOCK_SIZE, POSIXLY_CORRECT, e números que não podem ser colados

O GNU coreutils lê a variável de ambiente BLOCK_SIZE, e DF_BLOCK_SIZE e DU_BLOCK_SIZE a sobrescrevem por ferramenta. Definir POSIXLY_CORRECT muda o bloco padrão de 1.024 bytes para 512, cortando pela metade toda cifra que essas ferramentas imprimem. Tudo isso é documentado, nada disso é visível na saída, e tudo isso viaja com um perfil de shell em vez de com um comando.

A consequência prática é que uma contagem de blocos colada num chamado não se autodescreve. Dois administradores rodando o mesmo df no mesmo host podem produzir cifras que diferem por um fator de dois, e a discussão que se segue é sobre o sistema de arquivos em vez de sobre o ambiente. Passar um --block-size explícito quando um número vai para qualquer lugar além da sua própria tela remove essa classe de problema inteira.

Lendo uma contagem de blocos de nove dígitos sem se perder

As cifras de blocos que valem a pena reconhecer são as redondas. 1 GB são 976.563 blocos arredondado, 10 GB são 9.765.625, 100 GB são 97.656.250, 1 TB são 976.562.500. Os dígitos iniciais são os mesmos em toda escala — 9765625 —, o que torna a magnitude a única coisa a ler, e isso é uma contagem de dígitos, não um valor.

Isso também torna um erro comum fácil de detectar. Uma cifra começando com 1048 ou 1073 é uma conversão binário-para-binário feita com o par errado de unidades: 1.048.576 blocos são um gibibyte, não um gigabyte. Se uma contagem de blocos começa com 9, as unidades cruzaram sistemas como pretendido; se começa com 1, alguém dividiu pela coisa errada.

De onde veio a cifra em gigabytes, e se ela sobrevive

Uma capacidade cotada em gigabytes decimais quase sempre se originou fora da máquina: uma etiqueta de disco, um nível de serviço, um contrato, um pedido de compra. É o número que alguém vendeu. A contagem de blocos é o número que a máquina impõe, e entre os dois ficam o overhead do sistema de arquivos e os blocos reservados que nenhuma das partes mencionou.

Então uma cota de exatamente 976.562.500 blocos num volume «de 1 TB» não vai ser alcançável, porque o volume não apresenta um terabyte completo de espaço utilizável assim que suas próprias estruturas são alocadas. Definir cotas por usuário que somam a capacidade nominal é o jeito padrão de sobrevender um sistema de arquivos sem querer, e é um problema de conversão de unidade só no sentido de que as unidades foram o que fez parecer correto.

O bloco de 512 bytes que veio antes do de kilobyte

Antes dos blocos de 1 KiB havia os de 512 bytes, e eles não desapareceram. O POSIX especifica 512 como a unidade para a saída de df e du, motivo pelo qual definir POSIXLY_CORRECT corta pela metade toda cifra que essas ferramentas imprimem. O tar conta em registros de 512 bytes. A geometria de disco usou setores de 512 bytes por décadas, e discos que migraram para setores físicos de 4.096 bytes ainda apresentam setores lógicos de 512 bytes por compatibilidade.

O resultado prático é que uma contagem de blocos não tem sentido sem seu tamanho de bloco, e o tamanho de bloco é propriedade da ferramenta, da plataforma e do ambiente, não do sistema de arquivos. Uma cifra de 1.953.125.000 é um volume de 2 TB em blocos de 1 KiB e um volume de 1 TB em blocos de 512 bytes, e nada no número distingue os dois. Registrar a unidade junto de uma contagem de blocos não é pedantismo aqui; é a única coisa que torna o número interpretável.

Converter GB para KiB: perguntas frequentes

Quanto é 1 GB em KiB?

1 GB é 976562,5 KiB. A equivalência entre gigabyte e kibibyte é fixa; o número exibido é limitado a doze algarismos significativos para evitar ruído de ponto flutuante.

O que eu digito é enviado para algum lugar?

Não. O cálculo acontece no seu navegador. Você pode desconectar da internet e continuar calculando, que aliás é a forma mais simples de conferir isso.

Por que meu HD mostra menos capacidade do que anuncia?

Porque duas unidades diferentes têm o mesmo nome. Os fabricantes contam 1 GB = 1.000.000.000 bytes; o Windows mostra gibibytes, ou seja 1.073.741.824 bytes, mas chama de «GB». O mesmo disco parece assim sete por cento menor. Nada sumiu.

Ao contrário: de kibibyte para gigabyte

Um KiB é 0,000001024 GB. É a mesma relação lida de trás para frente, então um resultado de uma página passado pela outra tem que voltar ao ponto de partida.

De onde vêm estes números

O que esta página afirma sobre unidades de informação pode ser conferido, e estes são os documentos que resolvem a questão.

Como esta página funciona

O fator é uma constante na página e a conta são quatro operações, então nada é enviado a lugar nenhum e nada precisa ser. O número que você digita não sai do navegador — não existe requisição em que ele pudesse viajar.