Estou lendo meu livro de arquitetura de computadores e vejo que em uma CPU de 32 bits x86, o contador do programa é de 32 bits.
Portanto, o número de bytes que ele pode endereçar é 2 ^ 32 bytes ou 4 GB. Portanto, faz sentido para mim que a maioria das máquinas de 32 bits limita a quantidade de memória ram a 4 GB (ignorando o PAE).
Estou certo ao supor que uma máquina de 64 bits poderia teoricamente endereçar 2 ^ 64 bytes ou 16 exabytes de memória ram ?!
computer-architecture
KingNestor
fonte
fonte
Respostas:
Teoricamente: 16,8 milhões de terabytes. Na prática: o gabinete do seu computador é pequeno demais para caber em toda essa memória RAM.
http://en.wikipedia.org/wiki/64-bit#Limitations_of_practical_processors
fonte
Para complementar a resposta de Matt Ball, a maior quantidade atual de RAM que posso encontrar em um varejista on-line específico é de 32 GB. Seriam necessários 32 deles para atingir 1 terabyte. Com cerca de meia polegada por vara, isso nos leva a um espaço dedicado de 16 polegadas na placa-mãe por um terabyte de memória RAM comercial. Para atingir 16,8 milhões de terabytes, seria necessária uma placa-mãe 4.242,42 milhas. A distância de Los Angeles a Nova York é de cerca de 2141 milhas, de modo que a placa-mãe se estendia por todo o país e volta para acomodar tanta RAM.
Claramente isso é impraticável.
Que tal não colocarmos nossa memória RAM em uma linha, como na maioria das placas-mãe, mas colocá-las lado a lado. Quero dizer que o bastão médio de carneiro tem cerca de quinze centímetros de comprimento; portanto, se permitirmos meia polegada de largura, você pode ter uma unidade quadrada de 12 galhos de carneiro em um quadrado de 6 polegadas. Vamos chamar esse quadrado de RAM-tile. Um bloco de RAM contém 384 GB de RAM. Para atingir os 16,8 milhões de terabytes necessários em blocos de 384 GB, seriam necessários 44,8 milhões de blocos. Vamos ser confusos, e use a raiz quadrada disso para concluir que isso caberá em um quadrado de 6693 x 6694 telhas, ou 13.386 x 13.388 pés, que fica próximo o suficiente a 4 km quadrados, o suficiente para cobrir o centro de Seattle na sombra, como se eles ainda não tinham o suficiente para reclamar.
fonte
Efetivamente, sim - os processos poderiam, em teoria, endereçar 2 ^ 64 bytes de memória. Mas, como você apontou, existem maneiras de contornar esse limite.
fonte
Não existe um relacionamento fixo específico entre o tamanho do bit de um processador e a quantidade de memória endereçável. A maioria das máquinas de 8 bits do final da década de 1970 podia acessar facilmente 65.536 bytes diretamente, as 8088 e 8086 de 16 bits podiam acessar 1.048.576 bytes diretamente. Além disso, é possível adicionar hardware para permitir que as máquinas acessem qualquer quantidade de RAM indiretamente; muitas máquinas com processadores de 8 bits tinham 128K ou mais, e as unidades de expansão de memória para PCs baseados em 8088 podiam acessar mais de 16 megas. Embora a Microsoft tenha ativado esse recurso apenas nas versões "servidor" do Windows, era possível que o código de 32 bits acessasse a memória além da marca 4GiB usando abordagens semelhantes.
fonte
Você estaria correto. Você pode endereçar até 16 exabytes de RAM. Agora .. se o sistema operacional pode lidar com isso seria outra questão ....
fonte
Também seria bom observar que o sistema operacional tem sua própria limitação sobre a memória em uma arquitetura de 64 bits.
Por exemplo, veja o que a wikipedia diz sobre o Windows Vista 64:
fonte
A maior vantagem de 64 bits não é a RAM que ele pode endereçar, mas todo o resto. Você pode definir um endereço para cada byte em um disco, por exemplo, e o aumento da capacidade do disco não o invalidará por décadas.
fonte
A maioria dos processadores atuais de hoje tem algum tipo de limite artificial no tamanho do endereço. Por exemplo, a arquitetura AMD64 tem um limite de 52 bits na memória física e atualmente suporta apenas um espaço de endereço virtual de 48 bits. (Via Wikipedia). No entanto, sim, fisicamente ~ 16,4 milhões de terabytes são possíveis.
fonte
para uma resposta física realista de 1536 gb com 48 cartões de memória ram rodando em bastões de 32 gb e 4x lga2011 xeons
isto é para o esayist pc que alguém pode comprar sem violar os servidores hardcore ocultos, acho que existem 64gb que stics traz ... 3072gb 128gb be 6144gb 256gb be 12288gb
só para jogar lá fora, existem maneiras de contornar as limitações do RAM com o RAM, se o seu SO puder ver apenas 4 GB de RAM transformar as sobras em uma unidade de RAM e usar a unidade como arquivo de página XD XD XD XD apenas uma questão de fazer uma pré-inicialização sistema alguma coisa semelhante foi feita nos primeiros dias do DOS / Windows 3.11 etc
e pode haver outros pequenos hacks para contornar as limitações da CPU
engrenagem podemos ver isnt wats lá fora, há coisas muito mais potentes que eu tinha um PC de 98 executando 8 proccessores e algo parecido com 32GB de RAM, mas isso é caro oi servidores finais
estou olhando para servidores como desktops porque estou cansado dos computadores para o público XD
fonte