Depende do tipo de hipervisor. Existem hipervisores que podem ser implantados em outros hipervisores. Há muitas dicas, e o suporte de hardware abaixo de 64 bits não é bom. Eu tenho que enfatizar que você nunca faria isso além de testes - mesmo assim, é útil apenas para testar certas funcionalidades (como o vMotion ou o HA no lado do VMware). Ele não fornece nenhuma indicação sobre o desempenho do software em um ambiente de produção.
Primeiro, você precisa entender os níveis de privilégios do x86 (toques):
link
Normalmente, um sistema operacional (com acesso privilegiado ao hardware) será executado no Ring 0 e seus programas no nível do usuário (que devem interagir com o proxy pelo sistema operacional) serão executados no Ring 3. Quando um programa cria um sistema chamada, ele passa uma mensagem para o sistema operacional solicitando que execute uma função específica em seu espaço Ring 0 e retorne os resultados para o programa Ring 3.
Quando você implementa a virtualização completamente em software (sem assistência de hardware como Intel VT-x ou AMD-V), o que você faz essencialmente é inspecionar os níveis de privilégio do código dentro da VM em execução. No VMware, essa técnica é chamada de tradução binária. Qualquer código em execução no Anel 3 continua a ser executado no Anel 3, não modificado. Tudo o que é executado no Ring 0 é executado no Ring 1, com o acesso ao hardware do Ring 0 intermediado pelo hardware virtual do hipervisor. O hardware virtual é apenas um conjunto de software que informa ao sistema operacional host para fazer algo em seu espaço Ring 0.
Certos hardwares não fornecem suporte para tradução binária, porque não suportam os níveis de toque necessários para que isso aconteça. Notavelmente, os Anéis 1 e 2 não existem nos modos de 64 bits da maioria dos modernos processadores x86 (alguns processadores da AMD suportam, mas a Intel não). Portanto, a tradução binária é normalmente restrita a um sistema operacional convidado de 32 bits.
Como você já está usando o Anel 1 quando está usando um hipervisor com tradução binária, não é possível executar um hipervisor BT dentro de outro. (Ok, então, hipoteticamente, alguém poderia escrever um hipervisor que usa o Ring 2 quando ele mesmo está sendo virtualizado. É um caso tão complicado que não acho que alguém tenha feito isso.)
Os hipervisores paravirtualizar, como o Xen, funcionam sob uma premissa similar. Os hypervisores paravirtualizados usam kernels de convidado especialmente modificados que, em vez de executar no Ring 0, sabem que não estão sendo executados em hardware físico e são codificados para usar métodos especiais para conversar com o hipervisor. Como a paravirtualização funciona inteiramente dentro dos níveis de toque já em uso pelo sistema operacional, acredito que você deve ser capaz de executar níveis aninhados arbitrariamente de hipervisores paravirtualizados, desde que o hipervisor não exija nenhum acesso direto ao hardware. Existem obviamente limites práticos para o quão profundo você pode ir, e como observado, o desempenho não será bom.
As extensões de hardware, por outro lado, funcionam de maneira oposta à tradução binária - elas fornecem um nível de hipervisor superprivilegiado ou Ring -1 (um nível abaixo do Ring 0), que executa todo o código do Ring 0 não modificado. Quando esses conjuntos de instruções estão em uso, o Ring -1 fornece um ambiente no qual as operações do Ring 0 da máquina virtual são capturadas e tratadas pelo hipervisor sem nenhuma análise de código em execução.
Você não pode executar dois hipervisores usando extensões de hardware ao mesmo tempo, mesmo que esteja tentando executá-las lado a lado. Por exemplo, você não pode executar o Windows XP Mode no Windows 7 se já estiver usando o VirtualBox para executar uma máquina virtual usando o suporte de virtualização de hardware.
O que isso nos deixa é que você pode executar um hipervisor de tradução binária dentro de um hipervisor usando a virtualização de hardware, mas não o contrário. Além disso, o hypervisor-in-a-hypervisor geralmente só poderá executar convidados de 32 bits, mas o impacto sobre o desempenho geralmente não é tão substancial quanto alguns outros pôsteres sugeriram. (Os aplicativos que precisam de acesso pesado à memória, como servidores de banco de dados, ainda sofrerão porque precisam passar por dois conjuntos de tabelas de páginas virtuais.) A maioria dos hipervisores detecta quando estão sendo executados dentro de outro hipervisor e se recusam a executar. Alguns hipervisores funcionarão bem em uma capacidade de teste; Você pode executar várias instâncias do VMware ESXi no VMware Workstation, por exemplo (mas só pode usar o modo BT em qualquer máquina virtual do ESXi hospedada no VMware Workstation).
O Xen não realiza tradução binária - ele usa virtualização assistida por hardware ou realiza a paravirtualização. É possível executar o Xen paravirtualizado sob outro hipervisor, mas você não pode executar máquinas virtuais Xen-under-ESX usando virtualização completa de hardware dessa maneira.
Espero que isso ajude.