Hy­per­vi­sor (também grafado como hi­per­vi­sor) é um software ou firmware que cria e gerencia máquinas virtuais ao abstrair os recursos de hardware de um com­pu­ta­dor físico e torná-los aces­sí­veis a vários sistemas ope­ra­ci­o­nais si­mul­ta­ne­a­mente. Em vez de montar um sistema completo (incluindo o hardware e o sistema ope­ra­ci­o­nal nele instalado), cria-se uma versão virtual desse sistema, quase que “enganando” os sistemas ope­ra­ci­o­nais.

Como funciona um hy­per­vi­sor?

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, res­pon­sá­vel pela ad­mi­nis­tra­ção: o hy­per­vi­sor. O hy­per­vi­sor é um software que assume o ge­ren­ci­a­mento dos recursos ne­ces­sá­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 di­fe­ren­tes em um único sistema host, pois o hy­per­vi­sor garante que elas não in­ter­fi­ram umas nas outras e que todas tenham acesso à ca­pa­ci­dade de que precisam.

O hy­per­vi­sor cria, portanto, uma camada de abstração entre o hardware e os sistemas ope­ra­ci­o­nais que nele são exe­cu­ta­dos. 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 exe­cu­ta­das di­re­ta­mente sobre hardware real, mesmo com­par­ti­lhando recursos com outras VMs.

Nota

A separação rígida entre as di­fe­ren­tes máquinas virtuais garante não só uma boa dis­tri­bui­ção dos recursos, como também aumenta a segurança. Por meio do hy­per­vi­sor, é as­se­gu­rado que um sistema convidado não possa acessar os arquivos de outro sistema convidado. Isso é es­pe­ci­al­mente im­por­tante em ambientes de teste, para que um programa com falhas não com­pro­meta outras máquinas virtuais.

Ge­ren­ci­a­mento de memória

Na vir­tu­a­li­za­ção de uma CPU, o hy­per­vi­sor utiliza técnicas como time slicing para dividir a ca­pa­ci­dade de pro­ces­sa­mento de forma justa entre as VMs. Pro­ces­sa­do­res modernos possuem recursos es­pe­cí­fi­cos de vir­tu­a­li­za­ção (como Intel VT-x ou AMD-V), que auxiliam o hy­per­vi­sor e reduzem a so­bre­carga do sistema.

Já a memória RAM é ge­ren­ci­ada por meio de técnicas de paging e mapping. O hy­per­vi­sor 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 hy­per­vi­sor pode aplicar me­ca­nis­mos como memory over­com­mit­ment ou bal­lo­o­ning para dis­tri­buir os recursos de forma mais eficiente entre as VMs.

Ge­ren­ci­a­mento de I/O e de dis­po­si­ti­vos

As máquinas virtuais acessam dis­po­si­ti­vos de hardware como discos rígidos, placas de rede ou placas gráficas por meio de in­ter­fa­ces virtuais. O hy­per­vi­sor emula esses dis­po­si­ti­vos ou re­di­re­ci­ona as re­qui­si­ções di­re­ta­mente para o hardware físic, uti­li­zando técnicas como Direct I/O e Pass-Through. Isso permite equi­li­brar com­pa­ti­bi­li­dade e de­sem­pe­nho.

Iso­la­mento e segurança

Uma das prin­ci­pais vantagens da vir­tu­a­li­za­ção é o iso­la­mento entre as VMs. Cada VM é executada em seu próprio ambiente, de forma que falhas ou ataques em uma VM não afetam di­re­ta­mente outras máquinas virtuais nem o sistema host. O hy­per­vi­sor emprega diversos me­ca­nis­mos de segurança para garantir essa separação rígida, incluindo proteção de memória, controles de acesso e técnicas de sand­bo­xing.

Dica

Se você também deseja utilizar uma máquina virtual, pode escolher entre di­fe­ren­tes softwares de vir­tu­a­li­za­ção. Para usuários finais, o Vir­tu­al­Box ou o Hyper-V, a solução de vir­tu­a­li­za­ção da Microsoft, são boas opções. Já empresas de grande porte podem utilizar, por exemplo, a suíte de vir­tu­a­li­za­ção da VMware Broadcom.

Di­fe­ren­tes tipos de hy­per­vi­so­res

Há dois tipos distintos de ge­ren­ci­a­do­res de máquina virtual: hy­per­vi­so­res tipo 1 e tipo 2. Cada um possui ca­rac­te­rís­ti­cas e vantagens es­pe­cí­fi­cas. A primeira variante men­ci­o­nada é também a mais antiga: ainda nos anos 1960 já se faziam testes de vir­tu­a­li­za­ção com essa tec­no­lo­gia.

Hy­per­vi­sor tipo 1

O primeiro tipo de hy­per­vi­sor é conhecido como hy­per­vi­sor bare-metal ou hy­per­vi­sor nativo. Esse tipo de VMM é instalado di­re­ta­mente sobre o hardware físico, sem depender do sistema ope­ra­ci­o­nal do host. Por isso, ele precisa incluir todos os drivers de dis­po­si­ti­vos por conta própria. O consumo de recursos no hy­per­vi­sor tipo 1 é re­la­ti­va­mente baixo, já que o pro­ces­sa­mento não precisa passar pelo sistema ope­ra­ci­o­nal do host. Esse tipo de hy­per­vi­sor é ideal para usuários que desejam con­fi­gu­rar um servidor voltado à vir­tu­a­li­za­ção. Para projetos pequenos ou do­més­ti­cos, no entanto, ele tende a ser complexo e pouco prático.

Imagem: Representação esquemática do funcionamento do hypervisor tipo 1
Um hy­per­vi­sor do tipo 1 é executado di­re­ta­mente sobre o hardware.

Hy­per­vi­sor tipo 2

A segunda variante (também conhecida como Hosted Hy­per­vi­sor) requer um sistema ope­ra­ci­o­nal já existente, que por sua vez é executado sobre o hardware físico. Um hy­per­vi­sor tipo 2 é instalado como qualquer outro programa. Em seguida, o VMM gerencia a vir­tu­a­li­za­ção. Os drivers de dis­po­si­ti­vos não precisam ser ins­ta­la­dos di­re­ta­mente no hy­per­vi­sor, pois o sistema ope­ra­ci­o­nal principal pode sim­ples­mente repassá-los ao software. Essa co­mo­di­dade, no entanto, com­pro­mete o de­sem­pe­nho. Uma parte sig­ni­fi­ca­tiva dos recursos já é consumida pelo sistema ope­ra­ci­o­nal do host. No entanto, devido à ins­ta­la­ção e con­fi­gu­ra­ção simples, os hy­per­vi­so­res do tipo 2 são ideais para projetos menores.

Imagem: Representação esquemática do funcionamento do hypervisor tipo 2
O hy­per­vi­sor tipo 2 é instalado sobre um sistema ope­ra­ci­o­nal 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
Ir para o menu principal