Cá estou eu tentando colocar a minha simulação do Mestrado para funcionar e esbarro no problema que todo usuário de sistemas passa: “ah no meu micro funciona”
A minha simulação do Mestrado foi feita em Java usando um framework bastante primitivo de simulações chamado Swarm. Hoje em dia há vários frameworks melhores, tais como o Repast. Inclusive com o avanço das linguagens funcionais não é muito complicado criar a sua própria plataforma de simulações multiagentes.
Pois bem, para usar o Swarm você precisa ter uma máquina rodando um sistema operacional 32 bits. Isso porque o Swarm foi desenvolvido em Objective-C, muito antes da Apple usar essa linguagem como padrão para iOS. O código Java interage com bibliotecas nativas em Objective-C. Além disso há também interface com bibliotecas e recursos na linguagem Tcl para exibição de gráficos e janelas. Ou seja, para funcionar em micros modernos, tem que fazer tudo em 32 bits.
Isso significa:
- Java 6 32 bits, que ainda pode ser baixado no site do Java (requer autenticação com usuário no site da Oracle)
- GNU/Linux 32 bits
- GCC 32 bits
- Tcl e Tk com versões relativamente antigas (8.5)
Para rodar um ambiente 32 bits em um micro 64 bits, a melhor forma de fazer isso é com virtualização. E uma ótima ferramenta para preparar vm’s para esse fim é o Vagrant, que permite que você prepare a máquina virtual e aí é só escolher o provider, a plataforma de virtualização que irá ser utilizada. A plataforma padrão é o Virtualbox.
Fiz a preparação da caixa (box) em um notebook. Na hora de passar para o meu desktop de trabalho, nada. Fuça daqui e fuça dali, reinstalações mil e descubro qual é o problema: o Hyper-V, que é a plataforma de virtualização da Microsoft. Como eu tinha instalado o Hyper-V no desktop, ele já estava usando os recursos de virtualização que seriam utilizados pelo VirtualBox.
No fim eu tive que desabilitar o Hyper-V. Para fazer isso é só executar o comando abaixo em um prompt de comando como Administrador:
bcdedit /set hypervisorlaunchtype off
Depois desse comando o Windows deve ser reiniciado. Para ativar novamente o Hyper-V substitua o off por auto e reinicie o Windows novamente.
Em um próximo artigo vou detalhar a saga de rodar a minha simulação… 9 anos depois!