Por que os sistemas operacionais de 64 bits não podem executar aplicativos de 16 bits?
Por que seu computador de 64 bits não pode executar seus aplicativos antigos de 16 bits? Eis o porquê, além de algumas soluções alternativas que você pode usar de qualquer maneira.
Uma vez que os computadores começaram a usar a arquitetura moderna de 64 bits, os usuários logo perceberam que executar esses aplicativos antigos de 16 bits não iria funcionar. Por que máquinas de 64 bits não podem executar aplicativos de 16 bits?
A resposta para essa pergunta pode ser confusa, dependendo de quem você perguntar. Por um lado, não é realmente impossível executar aplicativos de 16 bits. É apenas difícil. Em segundo lugar, a razão para essa dificuldade está tanto na arquitetura da CPU quanto no sistema operacional.
Já está confuso? Não se preocupe, você não está sozinho. Mas quando você chegar ao final deste artigo, você não estará mais confuso.
A História da Arquitetura da CPU
Eu sei, a última coisa que você quer ler é uma lição de história, certo? Não se preocupe, este é curto. Também é fundamental entender por que sistemas de 64 bits não podem executar aplicativos de 16 bits nativamente.
Se você viveu os anos 80 e 90, então você provavelmente se lembra daqueles velhos dinossauros de 16 bits que todos na época acreditavam ser tecnologia de borda sangrenta.
Na época, era. Essas máquinas antigas executaram o processador Intel 8086 em 1978. O processador foi capaz de acessar um espaço de endereço de 1Mb usando endereçamento de 16 bits. Com máquinas anteriores fugindo de 64 Kb de memória, este foi um tremendo avanço e marcou o início de uma nova era na computação pessoal.
Neste modo (chamado modo Real), uma porção foi reservada para RAM, e o restante foi utilizado pelo BIOS e hardware do computador como a placa gráfica.
Um pouco mais tarde veio um avanço adicional na arquitetura da CPU com o processador 80286, capaz de abordar 16Mb usando endereçamento de 16 bits. Com a arquitetura 286 veio o "modo Protegido", com recursos que não só permitiam o endereçamento de mais memória, mas também multitarefas. Executar aplicativos mais antigos de 16 bits em "modo real" nem sempre foi fácil, mas era possível.
O fim de 16 bits, mais ou menos...
Em 1985, a Intel introduziu seu processador de próxima geração: o Intel 386. Esta foi a primeira CPU da Intel que poderia abordar a memória usando 32 bits de cada vez, e poderia acessar uma impressionante memória de 4 Gb de endereçada. Na época, isso parecia para os usuários de computador como um grande avanço. Pc Gaming estava prestes a entrar em seu auge.
Junto com o advento da arquitetura de 32 bits veio uma versão estendida do modo Protected que não só permitiu a capacidade de acessar mais memória, mas incluiu um conjunto de recursos onde o software poderia sinalizar para o sistema se fosse código de 16 bits ou 32 bits. Isso foi possível pelo que é conhecido como modo Virtual 86,que era essencialmente um sistema 8086 virtualizado integrado.
Como você pode ver, de uma evolução da arquitetura da CPU para a próxima, tanto o hardware (programação da CPU) quanto o software (sistemas operacionais e aplicativos), mantiveram a retrocompatibilidade para todos aqueles usuários que ainda tinham softwares muito antigos que queriam executar. Para usuários individuais de computador, isso foi útil, mas para muitas corporações e pequenas empresas, foi fundamental para sistemas legados.
Arquitetura de 64 bits arruinou tudo
O limite de 4GB de memória endereçável permaneceu uma muleta para sistemas de 32 bits por muitos anos. No entanto, com a invenção de processadores de 64 bits veio outro avanço. Esses sistemas incluíam um novo modo (conhecido como modo Longo) capaz de lidar com até 16 milhões de terabytes de memória. Provavelmente vai demorar muito até que isso se torne um fator limitante para aplicações de computador.
No entanto, com esse tremendo avanço veio uma troca significativa. Quando os usuários tentaram executar aplicativos de 16 bits que exigiam o "modo real" ou "modo virtual 8086" suportados por muito tempo, eles descobriram uma mensagem de erro que dizia: "Programa.exe não é um aplicativo Win32 válido."
Foi frustrante, mas não foi o fim do mundo. Os usuários poderiam usar emuladores ou instalar máquinas virtuais executando arquitetura e sistemas operacionais de 32 bits capazes de suportar aplicativos legados de 16 bits.
Portanto, embora seja "impossível" que sistemas de 64 bits executem aplicativos MS-DOS de 16 bits, não é impossível para os usuários fazê-lo usando uma solução alternativa. Mas por que isso aconteceu?
Arquitetura de 64 bits remove o NTVDM
Em todas as gerações de processadores de 32 bits ao longo dos anos, houve muito esforço no sistema operacional para que o sistema lidasse com aplicativos DOS mais antigos de 16 bits. Foi realizado usando o que é conhecido como NTVDM, ou NT Virtual DOS Machine.
Este aplicativo de 32 bits foi exibido no sistema operacional Windows e simulou uma arquitetura 486 capaz de lidar com endereçamento de 16 bits usando o virtual 8086. Infelizmente, o endereçamento "modo longo" não poderia acomodar isso com segurança. Em vez disso, teria exigido imitar um processador 8086 completo simplesmente para suportar aplicativos DOS em execução.
A Microsoft tomou claramente a decisão de abandonar esse esforço para suportar a liberação imediata de seu primeiro sistema operacional de 64 bits. Em sua página de suporte, a Microsoft afirma claramente que "os utilitários MS-DOS e Microsoft Windows 3.x de 16 bits não começarão".
Sem desculpas. Simplesmente não é suportado.
Com a infinidade de produtos de virtualização no mercado capazes de realizar isso de qualquer maneira, a Microsoft claramente não sentiu que era do seu melhor interesse reinventar a roda.
Como executar aplicativos de 16 bits em sistemas de 64 bits
Só porque a execução de aplicativos DOS de 16 bits não é suportada nativamente em sistemas Windows de 64 bits, isso não significa que seja impossível. Você só precisa instalar algumas ferramentas extras para configurar as coisas.
Se você gosta de jogos clássicos dos DOS ou usa quaisquer outros aplicativos retrô dos bons velhos tempos da computação, há opções. Aqui estão quatro maneiras de executá-los em sua nova máquina Windows.
1. Jogue jogos retrô com o DOSBox
Uma das maneiras mais fáceis de executar aplicativos antigos dos DOS em seu PC é usar um emulador. Um dos mais populares é o DOSBox.
Christian detalhou como instalar e configurar o DOSBox para executar jogos retrô antigos na sua máquina Windows.
A grande coisa sobre isso é que a maioria desses jogos são tão antigos que eles são considerados abandonware, para que você possa legalmente baixar e jogá-los gratuitamente.
2. Execute aplicativos dentro do VirtualBox
Como sistemas operacionais como Windows XP e Windows 7 podem executar aplicativos de 16 bits nativamente, você pode executar os mesmos aplicativos em seu sistema de 64 bits construindo uma máquina virtual com um desses sistemas operacionais nele.
Um dos aplicativos mais conhecidos e fáceis de configurar para isso é o VirtualBox. Temos um guia completo sobre como configurar e usar o VirtualBox, paraque você possa começar a usar essa abordagem agora.
Apenas certifique-se de escolher o sistema operacional certo para instalar. Fique com o Windows 7 ou anterior, e você pode baixar e instalar aplicativos antigos dos DOS em seu sistema virtual em pouco tempo.
3. Use o Linux
Diga o que quiser sobre o Linux, uma coisa que a maioria dos distros linux têm direito é o suporte para aplicativos de 16 bits. Distros com o kernal PAE, você não está limitado aos 4GB de sistemas de 32 bits, então executar um distro Linux adequado como uma dual-boot em seu sistema é outra opção.
Duas opções para fazer isso: uma solução de inicialização dupla ou uma máquina virtual. Ou você pode simplesmente despejar o Windows inteiramente, e ir com Linux. O que funcionar para você.
4. Use emuladores
O DOSBox não é o único emulador disponível para o propósito de executar aplicativos dos antigos. Há muitos grandes emuladores por aí que funcionam tão bem. Isso é especialmente verdade se você é um jogador.
O bolg ja cobriu como Emular um Comodoro Amiga,um Raspberry Pi, um Android, e até mesmo snes clássico em qualquer PC.
Esta é apenas a ponta do iceburg. Se você pesquisar online, encontrará uma biblioteca inteira de emuladores diferentes que permitirão que você execute qualquer aplicativo retrô que você possa imaginar. A Microsoft pode ter desistido de aplicativos antigos de 16 bits de antigamente, mas você ainda tem opções.
Não desista em 16 bits
Não há nenhuma razão para você pensar que é impossível executar aplicações de 16 bits em uma máquina de 64 bits. Pode ser impossível nativamente, mas como você pode ver, há muitas soluções para realizar a tarefa.
Comentários
Postar um comentário