May 19, 2024
Por que os PCs foram limitados a 640K de RAM (e como eles consertaram isso)?
Falta de memória, err... Nos dias selvagens dos primórdios da computação, existia uma limitação que poderia muito bem ser considerada uma das maiores peculiaridades da história da tecnologia. Essa limitação foi a
Falta de memória, erro...
Nos dias selvagens dos primórdios da computação, existia uma limitação que poderia muito bem ser considerada uma das maiores peculiaridades da história da tecnologia. Essa limitação foi a infame barreira de 640K nos PCs. O que houve com isso?
A primeira questão a ponderar é por que, na Terra, os PCs foram limitados a 640K de RAM (memória de acesso aleatório). Essa é uma quantia irrisória para os padrões atuais, onde nossos telefones exibem vários gigabytes sem pensar duas vezes. Mas volte ao início da década de 1980 e você estará em um cenário tecnológico totalmente diferente.
O computador pessoal original da IBM, o IBM PC 5150, foi lançado em 1981 e vinha com uma CPU que permitia no máximo 1 MB de RAM endereçável. Mas por que o estranho limite de 640K para RAM do sistema?
A IBM reservou o espaço de endereço de memória restante para outros usos, como ROM (memória somente leitura) e periféricos de hardware. Na verdade, essa era uma divisão razoável, considerando os aplicativos e recursos de hardware limitados da época.
Bill Gates foi notoriamente citado erroneamente como tendo dito: “640 mil deveriam ser suficientes para qualquer um”. Embora ele negue ter feito essa afirmação, ela incorpora o espírito de uma época em que 640K parecia uma enorme quantidade de memória. Quem poderia precisar de mais?
Como você pode não ficar chocado ao saber, o software começou a crescer em complexidade e sofisticação. Desenvolvedores de jogos, empresas de software de processamento de texto e outras mentes criativas estavam ansiosos por mais memória.
De repente, 640K não era um grande playground; era uma caixa claustrofóbica e os desenvolvedores de software sentiram o aperto.
Engenheiros e desenvolvedores consideraram a limitação de memória de 640K um desafio, criando maneiras de superar as restrições da arquitetura do IBM PC.
A Especificação de Memória Expandida (EMS) e a Especificação de Memória Estendida (XMS) foram duas soluções inteligentes para superar a limitação de memória de 640K nos primeiros PCs.
O EMS usou uma técnica chamada “enquadramento de página” e “comutação de banco”, onde a memória adicional era dividida em páginas e trocada dentro e fora de uma janela específica na área de memória superior, entre 640K e 1MB. Isso permitiu que os programas acessassem dinamicamente diferentes páginas de memória expandida conforme necessário. O EMS foi originalmente desenvolvido pela Lotus, Intel e Microsoft, por isso foi brevemente conhecido como memória LIM.
O XMS, por outro lado, aproveitou processadores mais novos como o Intel 80286, que permitiu acesso a mais memória em um modo “Protegido” especial. Essa abordagem também utilizou uma High Memory Area (HMA) logo acima do limite de 1 MB e usou um Extended Memory Manager para padronizar a maneira como os programas acessavam essa memória adicional. O XMS também foi desenvolvido pela Lotus, Intel e Microsoft.
A transição para os processadores Intel 80286 e 80386, com seus recursos avançados de gerenciamento de memória, ajudou a quebrar a barreira dos 640K. Esses chips permitiram acesso a grandes quantidades de memória que seriam impensáveis anos antes. O 80286 podia endereçar até 16 MB de RAM no Modo Protegido, mas não no Modo Real, que era compatível com aplicativos DOS. O 80386 pode endereçar até 4 GB de RAM em ambos os modos usando uma técnica chamada paginação. Entretanto, acessar a memória estendida no Modo Real requer software especial, como extensores DOS ou gerenciadores de memória.
O final dos anos 80 e início dos anos 90 viram os videogames evoluir de simples sprites para mundos envolventes. Essa evolução exigiu mais memória. Jogos como “Doom” de 1993, que exigiam um mínimo de 4 MB de RAM, significaram um momento crítico em que 640K não eram mais suficientes.
A indústria de jogos tornou-se um catalisador do progresso tecnológico. Os desenvolvedores de jogos trabalharam em estreita colaboração com os fabricantes de hardware, impulsionando a inovação e ampliando os limites da computação pessoal. Foi uma decisão clara de que mais RAM não era apenas um desejo, mas uma necessidade para corresponder à ambição crescente do mundo dos videogames.
É difícil pensar em outro tipo de software que justificasse quantidades relativamente altas de RAM tão cedo no mercado de computadores pessoais para usuários domésticos em particular. No entanto, uma vez que o seu PC doméstico tinha RAM para jogos que consomem muita memória, isso significava que os desenvolvedores que não eram de jogos poderiam razoavelmente esperar mais RAM para seus próprios softwares. Com o 80386, a multitarefa se tornou uma realidade, aproveitando ao máximo a memória disponível.