Hyper-V e Intel HAXM 1


Neste texto iremos tratar de dois softwares utilizados para virtualização, o Hyper-V da Microsoft e o Intel HAXM (Intel Hardware Accelerated Execution Manager). O Hyper-V é utilizado para criar máquinas virtuais com diferentes sistemas operacionais, ele prove recursos para criação e gerenciamento dessas máquinas virtuais. Já o Intel HAXM é utilizado para acelerar o emulador do sistema Android que utilizam processadores Intel.

 

Ativando a virtualização

Nas máquinas em que a virtualização é possível, é necessário primeiro ativar o recurso na BIOS, como cada fabricante tem um formato de interface na BIOS, fica difícil mostrar aqui o caminho exato, mas de forma geral, acesse a BIOS do computador e procure algo que seja similar a VT ou Virtualization (figuras 1, 2 e 3). Ao achar essa opção, deixa-a habilitada.

fig1_61

Figura 1. Virtualization Technology

fig2_61

Figura 2. CPU Virtualization

fig3_61

Figura 3. Virtualization

Qual ferramenta usar, Hyper-V ou Intel HAXM?

O Intel HAXM é indicado para o emulador do Android, se você for desenvolver aplicativos para esse sistema, é recomendado que você utilize o Intel HAXM para acelerar o emulador.

Para aqueles que precisam trabalhar com máquinas virtuais ou principalmente, desenvolver aplicativos para a plataforma Windows Phone, é necessário habilitar o Hyper-V.

O GRANDE PROBLEMA é que esses programas não podem rodar ao mesmo tempo, ou seja, se tiver o Hyper-V habilitado o Intel HAXM não funciona e vice-versa.

Você deve primeiro analisar o seguinte, se for desenvolver aplicativos nativos para cada uma das plataformas (Android e Windows Phone), continue lendo este tutorial, se o seu caso for desenvolver somente para UMA dessas plataformas, habilite somente uma (Intel HAXM para Android OU Hyper-V para Windows Phone) e seu problema estará resolvido e não precisa continuar lendo esse texto.

 

Instalando o Intel HAXM

O tutorial oficial para instalação do Intel HAXM pode ser encontrado no link (https://software.intel.com/en-us/android/articles/installation-instructions-for-intel-hardware-accelerated-execution-manager-windows), mas vamos tentar simplificar o processo passo a passo.

1º Passo: você pode baixar essa ferramenta quando estiver configurando o Android SDK na sua máquina (marque a opção na sessão de Extras do SDK Manager, figura 4) OU pode fazer o download do instalador manualmente no link (https://software.intel.com/en-us/android/articles/intel-hardware-accelerated-execution-manager)

fig4_61

Figura 4. Ativando o Intel HAXM com o SDK Manager

2º passo: se você optou em fazer o download pelo SDK Manager, localize a pasta extras dentro da pasta do SDK do seu Android, procure pelo arquivo .EXE do Intel HAXM e execute. Geralmente o caminho é algo parecido com isso: C:\pasta de instalação do android\sdk\extras\intel\…

Caso tenha feito o download manualmente, descompacte o arquivo e execute o instalador.

A instalação é muito simples (figura 5), basta clicar no botão Next e instalar. Será solicitado o tamanho da memória RAM para a máquina virtual, aconselhamos que você deixe o valor padrão.

fig5_61

Figura 5. Instalação do Intel HAXM

Se durante a instalação der o erro da figura 6, verifique os seguintes pontos:

1 – Se a sua máquina permite virtualização

2 – Se você ativou a virtualização na BIOS

3 – Se o HYPER-V está DESABILITADO, veja neste tutorial como habilitar e desabilitar o Hyper-V através do prompt de comando.

fig6_61

Figura 6. Erro na instalação do Intel HAXM

Habilitando/Desabilitando o Hyper-V (Painel de Controle)

Se você for trabalhar com máquinas virtual ou principalmente desenvolver para Windows Phone com o Visual Studio, será necessário habilitar o Hyper-V, veja como fazer no passo-a-passo a seguir:

1º Passo: acesse o Painel de Controle e a opção Programa

2º Passo:  clique em Ativar e Desativar recursos do Windows (figura 7)

fig7_61

Figura 7. Ativar e desativar recursos do Windows

 

3º passo: MARQUE a caixa de verificação do Hyper-V para HABILITAR (figura 8), ou DESMARQUE a caixa para DESABILITAR.

4º passo: após alguns minutos, será solicitado para reiniciar o computador, somente após reiniciar o computador é que o Hyper-V será habilitado realmente.

fig8_61

Figura 8. Habilitar e desabilitar o Hyper-V

Como manter as duas ferramentas rodando?

As ferramentas citadas nesse tutorial, são mutualmente exclusivas, ou seja, não podem rodar ao mesmo tempo.

A primeira solução para o problema, como já foi mencionado, é você analisar sua necessidade em ter as duas, se for necessário somente uma delas, seu problema é fácil de ser resolvido, basta desabilitar uma para a outra rodar.

Agora se você precisa utilizar as duas (obviamente não no mesmo tempo), iremos dar algumas sugestões de como resolver o problema, essas soluções foram compiladas a partir de diversos tutoriais disponíveis na web, a maioria em inglês, como por exemplo o tutorial (http://blogs.msdn.com/b/virtual_pc_guy/archive/2008/04/14/creating-a-no-hypervisor-boot-entry.aspx) ou (http://udhyantimilsina.com/2015/03/11/solved-how-to-fix-intel-virtualization-technology-vt-x-error-to-setup-haxm-for-hyper-v-sytem-or-emulator/).

 

Verificando as opções de boot do Windows

Para realizar qualquer uma das opções abaixo, você deverá executar o arquivo BCDEdit (principal ferramenta para edição de configuração de inicialização do Windows). Para utilizar essa ferramenta, é necessário ter privilégios de Administrador, para isso, localize o prompt de comando (CMD), clique com o botão direito do mouse sobre ele e execute como Administrador (figura 9).

fig9_61

Figura 9. Executar o prompt de comando como Admin

Se quiser mais informações do comando BCDEdit, acesse https://technet.microsoft.com/pt-br/library/cc709667(v=ws.10).aspx.

 

Primeira opção: Definir mais de uma entrada no Boot do Windows

Como você só poderá usar uma ferramenta de cada vez, pode ser interessante criar um dual boot com duas entradas, uma entrada com o Hyper-V desabilitado para você utilizar o Intel HAXM e com isso desenvolver seus apps Android e outra entrada com o Hyper-V habilitado para você desenvolver apps Windows Phone (figura 10).

fig10_61

Figura 10. Definindo duas entradas no boot do Windows

 

A primeira coisa a ser feita é deixar na inicialização padrão do Windows o Hyper-V desabilitado para que você possa usar o Intel HAXM, com isso, a primeira opção para iniciar o Windows (opção padrão) será sem o Hyper-V.

Para verificar se o Hyper-V está desabilitado, acesse o prompt de comando como admin e digite:

bcdedit

Nas configurações que irão aparecer verifique se a linha hypervisorlaunchtype está OFF (figura 11).

fig11_61

Figura 11. Hypervisorlaunchtype OFF

Caso a linha não esteja com o valor OFF, digite o comando exibido na figura 12.

fig12_61

Figura 12. Deixando o hyper-v off

 

Agora vamos criar a segunda entrada com o Hyper-V habilitado.

Acesse o prompt de comando como admin e digite o comando bcdedit como exibido na figura 13:

fig13_61

Figura 13. Comando bcdedit

Basicamente essa linha de comando bcdedit /copy {current} /d “Windows 8.1 (com Hyper-V)”, irá criar uma cópia das configurações atuais de inicialização do Windows com o rótulo ou descrição “Windows 8.1 (com Hyper-V)”, o identificador da nova entrada é exibido assim que você executar o comando, no exemplo (figura 13) a entrada criada foi {1e6fb8e9-25de-11e5-82af-bc773777b77a}, em cada computador esse ID será diferente, então preste atenção no seu ID.

Agora que já definimos a nova entrada, precisamos habilitar o Hyper-V, para isso digite o comando bcdedit como demonstrado na figura 14.

fig14_61

Figura 14. Habilitando o Hyper-V

O comando bcdedit /set {1e6fb8e9-25de-11e5-82af-bc773777b77a} hypervisorlaunchtype auto, irá habilitar o Hyper-V.

Para verificar suas configuras atuais de inicialização do Windows, digite no prompt bcdedit, veja o resultado do nosso exemplo na figura 15 e 16.

fig15_61

Figura 15. Entrada padrão, sem hypervisor

fig16_61

Figura 16. Segunda entrada, com hypervisor

Pronto, reinicie seu computador para visualizar as duas entradas no boot do Windows.

Se quiser fazer as instalações descritas no início deste tutorial após essas configurações, basta entrar na inicialização padrão para instalar o Intel HAXM e na segunda opção de inicialização para usar o Hyper-V e instalar as ferramentas para Windows Phone.

 

Segunda opção: Desabilitar/Habilitar o Hyper-V no prompt de comando (cmd) sem criar o dual boot

Caso você não queira criar o dual boot, é possível fazer a configuração para habilitar e desabilitar o Hyper-V diretamente no prompt, porém neste processo é necessário reiniciar o computador a cada alteração, dependendo do computador, pode se tornar um processo lento.

Primeiro verifique o valor atual do hypervisorlaunchtype, digite o comando bcdedit como admin para fazer essa verificação, figura 17.

fig17_61

Figura 17. Configurações de boot padrão

Se a configuração estiver Off, digite a linha abaixo (figura 18) e reinicie o computador para que as configurações sejam aplicadas.

fig18_61

Figura 18. Comando para ativar o hypervisor

O comando bcdedit /set hypervisorlaunchtype auto irá ativar o Hyper-V, lembre-se que com isso não será possível executar o Intel HAXM para acelerar o emulador do Android.

Por outro lado, se a configuração estiver Auto, digite a linha abaixo (figura 19) e reinicie o computador novamente.

fig19_61

Figura 19. Comando para desabilitar o hypervisor

Observação, nos dois casos citados nesta opção, é NECESSÁRIO reiniciar o computador para que as configurações sejam aplicadas.

Uma pequena variação dessas configurações, seria criar um arquivo .bat para ativar e outro para desativar as configurações do hypervisorlaunchtype.

Crie um arquivo com o nome hyperv-ON.bat e digite os comandos:

bcdedit /set hypervisorlaunchtype auto

shutdown /r /t 15 /c “Hyper-V On”

 

Crie outro arquivo com o nome hyperv-OFF e digite os comandos:

bcdedit /set hypervisorlaunchtype off

shutdown /r /t 15 /c “Hyper-V Off”

 

Perceba que as configurações do bcdedit já foram explicadas anteriormente, a diferença estaria na linha do shutdown, a opção /r irá reiniciar o computador; o /t 15 determinada que o computador será reiniciado em 15 segundos e o /c é a mensagem que será exibida antes de reiniciar.

Lembre-se de executar ambos os arquivos como administrador, basta clicar com o botão direito do mouse sobre os arquivos e escolher Executar como Administrador, figura 20.

fig20_61

Figura 20. Executar o arquivo bat como admin

 

Terceira opção: Criar máquinas virtuais para cada plataforma de desenvolvimento

Se você tiver um computador com bastante memória RAM, pode ser interessante criar máquinas virtuais para cada uma das plataformas que deseja desenvolver, assim, você criaria uma máquina virtual para o Android com o Intel HAXM instalado e o Hyper-V desabilitado e outra para o Windows Phone com o Hyper-V habilitado.

A vantagem desta opção seria que não precisa esperar reiniciar o computador toda vez que quiser mudar de plataforma, a desvantagem é na parte de performance, a máquina virtual por si só já é um pouco lenta, e rodar outro emulador dentro dela torna o processo mais lento ainda, por isso a necessidade de ter um computador robusto para essa opção. 

 

Conclusão

Verifique se você precisa realmente manter as duas máquinas virtuais instaladas no seu computador, se verificar que é necessário, teste as duas opções de configurações descritas neste tutorial e veja qual roda melhor no seu computador. Tem pessoas que não gostam do dual boot, neste caso opte pela segunda opção.

A opção do dual boot é mais prática pois não precisa reiniciar o computador uma vez escolhida a configuração que se deseja trabalhar. A configuração através do prompt exige sempre reiniciar o computador.

Alcides T. Barboza Jr

Alcides T. Barboza Jr

Professor nos cursos de Ciências da Computação e Análise e Desenvolvimento de Sistemas da Universidade Cruzeiro do Sul.
Alcides T. Barboza Jr

Últimos posts por Alcides T. Barboza Jr (exibir todos)


Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

One thought on “Hyper-V e Intel HAXM