Por que é que 32 bits é limitado a 4 GB de RAM, mas pode suportar facilmente HDDs de 1 TB? [fechadas]

5

Por que é que 32 bits é limitado a 4 GB de RAM, mas pode suportar facilmente HDDs de 1 TB?

Como funciona a matemática binária?

    
por Joshua 13.10.2012 / 00:06

2 respostas

17

O problema é com endereçamento: o endereçamento RAM é feito por byte, então 2 ^ 32 permite tornar 4G bytes endereçáveis.

O endereçamento do disco rígido é feito por setor. Cada setor tem 512 bytes de comprimento. Assim, um único valor de 32 bits permite endereçar um setor em disco de 2 TB.

Para permitir acesso a discos com mais de 2 TB, o sistema operacional usa endereços setoriais de 64 bits.

    
por 13.10.2012 / 00:21
3

Não tem nada a ver com matemática binária. Tem a ver com o tamanho do espaço de endereço que você pode criar com um número limitado de bits. Os bits são exponenciais em termos de suas capacidades de endereçamento individuais. Saltar de 32 bits para 64 bits não concede o dobro da quantidade de espaço de endereçamento do que antes, isso lhe garante muito mais. Por exemplo:

128 64 32 16 8 4 2 1

Isto é o que 8 bits ou um byte parece. Cada bit é ordenado e tem o valor indicado. Então, com 8 bits, você pode criar um número no intervalo de 0 e 255. Tente você mesmo, adicione todos os bits juntos e veja o que você obtém ...

1 + 2 + 4 + 8 ... and so on = 255

Basta colocar como ...

2^8 where 8 is the number of bits

No entanto, adicione apenas um bit extra e você pode aumentar seu valor para até 511: (255 + 256) = 511

256 128 64 32 16 8 4 2 1

Portanto, imagine que cada espaço de endereço seja apenas um número, portanto, com 8 bits, você pode endereçar 256 bytes de memória. Talvez o valor 65536 ou 64k pareça familiar? Isso porque é o número de bytes de memória que podem ser endereçados com 16 bits. Então, com 32 bits, você pode endereçar 4 GB de memória:

2^32 = 4294967296 or 4GB

Agora, responda sua pergunta sobre os discos rígidos. Os discos rígidos não possuem fios físicos estáticos que exigem um espaço de endereço. Os discos rígidos são dinâmicos, pois possuem partes móveis. A qualquer momento, o SO não precisa endereçar cada byte em um disco rígido. Ele pode endereçar alguns deles na memória enquanto é necessário (portanto, lendo do disco para a memória), depois escrito de volta quando não é necessário. O controlador de disco rígido possui um driver que permite que o sistema operacional faça interface com o sistema de arquivos. Os sistemas de arquivos possuem um índice, que é endereçável e usa isso para carregar índices estendidos ou saber onde procurar no disco para obter os dados. É por isso que os discos rígidos são lentos em comparação com a memória, porque o acesso aos dados é um processo muito mecânico.

Pense no seu disco rígido como um livro. Você pode começar a ler cada página para encontrar o que está procurando, mas isso pode levar semanas. Em vez disso, você verá o índice na parte de trás do livro para obter os números de página que contêm informações relevantes. Você então procurará essas páginas e lerá as informações em sua memória de curto prazo, onde processará os fatos. Em algum momento, você precisará memorizar outra coisa, quando você se esquece dos detalhes menores do que acabou de ler. Da próxima vez que você quiser acessar essa informação novamente, você vai ao índice, procura o número da página novamente e busca a página do livro, onde você o lê novamente na memória de curto prazo.

Espero que isso ajude.

    
por 13.10.2012 / 00:37