Tipos importantes de virtualização
Virtualização Total (Full Virtualization)
"A virtualização total realiza a completa abstração do sistema físico e cria um sistema virtual completo. Não é necessário fazer qualquer modificação no sistema operacional ou na aplicação que está rodando nesta modalidade."
-
A virtualização total facilita a migração de máquinas virtuais entre servidores físicos, pois há uma total independência entre aplicações e os recursos físicos do servidor, onde a segurança é adequada devido ao isolamento entre as máquinas. Entretanto, como todo o processo e gerenciamento é suportado e controlado pelo monitor ou hypervisor o desempenho das máquinas virtuais podem se apresentar prejudicados.
-
Na virtualização total, também chamada de virtualização completa ou nativa, uma estrutura completa de hardware é virtualizada, e o sistema virtualizado não precisa ser alterado. A virtualização total cria um ambiente virtual no qual o hardware fornecido aos sistemas operacionais convidados corresponde a um sistema real, onde toda a interface de acesso (System Call ou Chamadas de Sistema) ao hardware é virtualizada, incluindo todas as instruções do processador e os dispositivos de entrada e saída (Input/Output).
-
Outra grande vantagem dessa técnica deve-se ao fato de que os sistemas operacionais virtuais não precisam sofrer modificações e todo o trabalho de gerenciamento dos dispositivos fica por conta do hypervisor.
A figura ilustra uma estrutura de virtualização total, onde o hypervisor é executado sobre uma camada de hardware de um servidor dedicado para esta tarefa.

Paravirtualização (Paravirtualization)
"A paravirtualização surgiu como uma forma de contornar as desvantagens de uso da virtualização total, no que diz respeito ao processamento. A máquina virtual enxerga uma abstração do hardware que não é idêntico ao hardware físico. Os dispositivos de hardware são acessados por drives do próprio hypervisor, pois otimiza o desempenho."
-
Na paravirtualização o hypervisor deixa as máquinas virtuais saberem que estão sendo virtualizadas. De forma que a máquina que esta sendo virtualizada coopere com o hypervisor aumentando a eficiência do sistema.
-
A paravirtualização, um sistema operacional hospedeiro (Kernel/Núcleo), é alterado para que um hypervisor seja instalado e preparado para suportar a criação de máquinas virtuais, todo o gerenciamento de hardware, operações críticas, gerenciamento memória, interrupções, gerenciamento de CPU e compartilhamento de recursos é feito diretamente pelo sistema operacional hospedeiro.
-
Na paravirtualização, o sistema a ser virtualizado (sistema hospedeiro) sofre modificações para que a interação com o hypervisor seja mais eficiente.
A a figura demonstra uma estrutura de paravirtualização, onde um sistema operacional
hospedeiro modificado está sendo executado sobre o hypervisor.

Virtualização assistida por hardware
-
Vários hypervisors permitem a virtualização assistida por hardware, que é oferecer o recurso físico diretamente para que seja utilizado pela máquina virtual, como placa de rede, discos, placa de vídeo, dentre vários outros dispositivos.
Existem diferentes hypervisors, o mais relevante é perceber que estes conceitos existem e qual o seu signifcado. Existem vários fatores que podem e vão influenciar diretamente no desempenho, no custo, e consequentemente na decisão que deverá ser tomada em optar por determinado tipo de virtualização.