Hypervisor (também grafado como hipervisor) é um software ou firmware que cria e gerencia máquinas virtuais ao abstrair os recursos de hardware de um computador físico e torná-los acessíveis a vários sistemas operacionais simultaneamente. Em vez de montar um sistema completo (incluindo o hardware e o sistema operacional nele instalado), cria-se uma versão virtual desse sistema, quase que “enganando” os sistemas operacionais.

Como funciona um hypervisor?

Ao criar uma máquina virtual (VM), ela é executada com base em uma máquina real, não virtual – por exemplo, um PC. Ou seja, a VM depende do hardware físico. Por isso, existe uma camada entre esses dois níveis, responsável pela administração: o hypervisor. O hypervisor é um software que assume o gerenciamento dos recursos necessários. Também conhecido como Virtual Machine Monitor (VMM), esse programa distribui os recursos dentro do sistema. Dessa forma, é possível executar várias máquinas virtuais diferentes em um único sistema host, pois o hypervisor garante que elas não interfiram umas nas outras e que todas tenham acesso à capacidade de que precisam.

O hypervisor cria, portanto, uma camada de abstração entre o hardware e os sistemas operacionais que nele são executados. Ele faz isso dividindo os recursos de hardware em unidades lógicas e simulando para cada VM um ambiente próprio. Assim, as VMs têm a impressão de estar sendo executadas diretamente sobre hardware real, mesmo compartilhando recursos com outras VMs.

Nota

A separação rígida entre as diferentes máquinas virtuais garante não só uma boa distribuição dos recursos, como também aumenta a segurança. Por meio do hypervisor, é assegurado que um sistema convidado não possa acessar os arquivos de outro sistema convidado. Isso é especialmente importante em ambientes de teste, para que um programa com falhas não comprometa outras máquinas virtuais.

Gerenciamento de memória

Na virtualização de uma CPU, o hypervisor utiliza técnicas como time slicing para dividir a capacidade de processamento de forma justa entre as VMs. Processadores modernos possuem recursos específicos de virtualização (como Intel VT-x ou AMD-V), que auxiliam o hypervisor e reduzem a sobrecarga do sistema.

Já a memória RAM é gerenciada por meio de técnicas de paging e mapping. O hypervisor associa blocos físicos de memória a endereços virtuais, fazendo com que cada VM enxergue apenas sua própria área de memória. Quando a memória se torna escassa, o hypervisor pode aplicar mecanismos como memory overcommitment ou ballooning para distribuir os recursos de forma mais eficiente entre as VMs.

Gerenciamento de I/O e de dispositivos

As máquinas virtuais acessam dispositivos de hardware como discos rígidos, placas de rede ou placas gráficas por meio de interfaces virtuais. O hypervisor emula esses dispositivos ou redireciona as requisições diretamente para o hardware físic, utilizando técnicas como Direct I/O e Pass-Through. Isso permite equilibrar compatibilidade e desempenho.

Isolamento e segurança

Uma das principais vantagens da virtualização é o isolamento entre as VMs. Cada VM é executada em seu próprio ambiente, de forma que falhas ou ataques em uma VM não afetam diretamente outras máquinas virtuais nem o sistema host. O hypervisor emprega diversos mecanismos de segurança para garantir essa separação rígida, incluindo proteção de memória, controles de acesso e técnicas de sandboxing.

Dica

Se você também deseja utilizar uma máquina virtual, pode escolher entre diferentes softwares de virtualização. Para usuários finais, o VirtualBox ou o Hyper-V, a solução de virtualização da Microsoft, são boas opções. Já empresas de grande porte podem utilizar, por exemplo, a suíte de virtualização da VMware Broadcom.

Diferentes tipos de hypervisores

Há dois tipos distintos de gerenciadores de máquina virtual: hypervisores tipo 1 e tipo 2. Cada um possui características e vantagens específicas. A primeira variante mencionada é também a mais antiga: ainda nos anos 1960 já se faziam testes de virtualização com essa tecnologia.

Hypervisor tipo 1

O primeiro tipo de hypervisor é conhecido como hypervisor bare-metal ou hypervisor nativo. Esse tipo de VMM é instalado diretamente sobre o hardware físico, sem depender do sistema operacional do host. Por isso, ele precisa incluir todos os drivers de dispositivos por conta própria. O consumo de recursos no hypervisor tipo 1 é relativamente baixo, já que o processamento não precisa passar pelo sistema operacional do host. Esse tipo de hypervisor é ideal para usuários que desejam configurar um servidor voltado à virtualização. Para projetos pequenos ou domésticos, no entanto, ele tende a ser complexo e pouco prático.

Imagem: Representação esquemática do funcionamento do hypervisor tipo 1
Um hypervisor do tipo 1 é executado diretamente sobre o hardware.

Hypervisor tipo 2

A segunda variante (também conhecida como Hosted Hypervisor) requer um sistema operacional já existente, que por sua vez é executado sobre o hardware físico. Um hypervisor tipo 2 é instalado como qualquer outro programa. Em seguida, o VMM gerencia a virtualização. Os drivers de dispositivos não precisam ser instalados diretamente no hypervisor, pois o sistema operacional principal pode simplesmente repassá-los ao software. Essa comodidade, no entanto, compromete o desempenho. Uma parte significativa dos recursos já é consumida pelo sistema operacional do host. No entanto, devido à instalação e configuração simples, os hypervisores do tipo 2 são ideais para projetos menores.

Imagem: Representação esquemática do funcionamento do hypervisor tipo 2
O hypervisor tipo 2 é instalado sobre um sistema operacional já existente.
Cloud Compute Engine da IONOS

Empresas de médio e grande porte optam pela nuvem da Alemanha. Serviços IaaS e PaaS são para campeões.

  • Seguro
  • Confiável
  • Flexível
Este artigo foi útil?
Ir para o menu principal