
Ao experimentar o Windows 8 Consumer Preview, instalei o Hyper-V.
Parecia apenas mais um Windows Virtual PC.
Alguém poderia explicar como é diferente? Existe uma diferença de desempenho? Algum motivo para eu escolher um em vez do outro?
Responder1
Alguém poderia explicar como é diferente? Existe uma diferença de desempenho? Algum motivo para eu escolher um em vez do outro?
Como a outra resposta que você já explicou, existem algumas diferenças arquitetônicas entre os dois projetos.
Grosso modo, no que diz respeito a um hipervisor Intel VT, para ativar o hipervisor você executa (em assembly) uma sequência especial de instruções, culminando em VMXON
. Isso ativa o modo hipervisor.
Parte desse trabalho envolve definir máquinas virtuais em termos detabelas de páginas estendidasou o equivalente AMD. Isso é como a tarefa comum de configurar tabelas de páginas (quais mapas de memória e onde), exceto que você faz isso para regiões inteiras de memória para máquinas virtuais. A tecnologia VM anterior acabou de ficar presaSaídas de VM para esta finalidadeque são essencialmente como interrupções de hardware sofisticadas.
Como isso se refere à arquitetura? Bem, você tem duas opções para construir um hipervisor:
Crie um hipervisor independente que configure o monitor da máquina virtual e aguarde pelos sistemas operacionais convidados. Geralmente, ele contém sistema operacional suficiente para gerenciar as VMs ou oferece suporte a um convidado privilegiado. Por exemplo, o hipervisor Xen inclui um “convidado” “Dom0” que tem a capacidade de gerenciar o hipervisor.
Construa um hipervisor como parte de um kernel existente, por exemplo, como um módulo de kernel. O código pode ser instalado como um monitor de máquina virtual no Intel VT a qualquer momento durante a vida útil de um sistema operacional (assumindo privilégios suficientes) e também removido. Como tal, o código do hipervisor simplesmente configura o espaço necessário na memória conforme necessário.
Praticamente, a diferença para o usuário final seria que você não pode descarregar o hipervisor se ele for do primeiro tipo sem reinicializar. Isso ocorre porque ele atua como um sistema operacional por si só. O Hyper-V age assim - se você tiver o Hyper-V instalado, não poderá instalar o VirtualBox, por exemplo, porque ambos não podem compartilhar o espaço do monitor da máquina virtual (já que o Hyper-V já o possui). Para descarregar o hipervisor, você precisa reinicializar.
Simplificando: se você tiver o Hyper-V instalado, mesmo que não tenha nenhuma VM em execução, você não poderá usar nenhum outro produto de virtualização. Este não é o caso do Virtual PC.
Agora, desempenho. Em sistemas do tipo Intel VT, carregar primeiro o sistema operacional ou o hipervisor provavelmente faz pouca diferença em termos de desempenho, uma vez que esta é apenas uma área limitada pela CPU e se você já estiver usando a virtualização assistida por hardware da CPU, você será tão rápido como você pode conseguir de qualquer maneira.
Em termos de desempenho, as diferenças na virtualização vêm de técnicas comoparavirtualizaçãoe o uso deIOMMU/Remapeamento DMA. Resumindo, a ordem de organização da memória do sistema operacional/CPU não fará tanta diferença quanto se você pode ou não virtualizar com eficiência coisas como discos rígidos, placas gráficas, etc.
Parece muito deesta postagem do blogque o Hyper-V teve problemas no passado com preocupações de virtualização do tipo consumidor: gráficos, som, etc. Não executei o Hyper-V precisando dessas coisas, então não posso comentar se elas ainda são um problema, mas pode valer a pena investigar.
Responder2
O Hyper V fornecerá melhor desempenho do que, digamos, o Windows Virtual PC
http://en.wikipedia.org/wiki/Hypervisor
Robert P. Goldberg classifica dois tipos de hipervisor:[5]
Os hipervisores tipo 1 (ou nativos, bare metal) são executados diretamente no hardware do host para controlar o hardware e gerenciar sistemas operacionais convidados. Um sistema operacional convidado, portanto, é executado em outro nível acima do hipervisor.
Este modelo representa a implementação clássica de arquiteturas de máquinas virtuais; os hipervisores originais foram a ferramenta de teste SIMMON e CP/CMS, ambos desenvolvidos na IBM na década de 1960. CP/CMS foi o ancestral do z/VM da IBM. Um equivalente moderno disso é o hipervisor Citrix XenServer, VMware ESX/ESXi e Microsoft Hyper-V.
Os hipervisores tipo 2 (ou hospedados) são executados em um ambiente de sistema operacional convencional. Com a camada de hipervisor como um segundo nível de software distinto, os sistemas operacionais convidados são executados no terceiro nível acima do hardware. KVM, BHyVe e VirtualBox são exemplos de hipervisores Tipo 2.
A Wikipedia explica isso claramente