logo

Home
Aprendendo sobre os Tipos de Virtualização PDF Imprimir E-mail
Escrito por Alexander Manfrin   

Na arquitetura X86, os sistemas operacionais foram escritos para rodar diretamente sobre o hardware (bare-metal), assumindo completo controle do hardware do computador para si. Nessa arquitetura são oferecidos 4 níveis de privilégios de acesso para operações de sistemas e acesso das aplicações ao hardware, estes são conhecidos como Ring 0, 1, 2 e 3. Aplicações de usuários (user level) rodam tipicamente em Ring 3. O sistema operacional por sua vez precisa ter acesso direto à memória e ao hardware e necessita executar as instruções em nível privilegiado, nível 0.

 

Assim, a arquitetura x86 requer que a camada de virtualização esteja presente nos níveis mais privilegiados de execução e o sistema operacional espera estar em Ring 0 para criar e gerenciar os recursos oferecidos às máquinas virtuais conforme pode ser visto na figura a seguir:

Figura - Hardware sem virtualização

Três técnicas alternativas de virtualização de instruções privilegiadas na CPU estão presentes para a arquitetura x86: Virtualização Full, Paravirtualização e Hardware Assist.

 

Paravirtualização


Paravirtualização é uma técnica de virtualização de segunda geração que apresenta uma interface de software para as máquinas virtuais, que é similar, mas não idêntica ao hardware adjacente. Nesta técnica, a paravirtualização refere-se à comunicação entre o guest OS e o hypervisor para prover performance e eficiência. A paravirtualização envolve a modificação do kernel do OS virtual, a fim de substituir instruções não virtualizadas que se comunicam diretamente com a camada de virtualização (hypercalls). O hypervisor então provê interfaces de comunicação para operações críticas de kernel, como gerenciamento de memória, controle de interrupções e time keeping.

Isso faz com que a paravirtualização não suporte sistemas operacionais não modificados tais como Windows 2000/XP/Vista, tendo assim, desvantagens de compatibilidade e portabilidade.

 



Figura - Paravirtualização


O projeto Xen open source é um exemplo de paravirtualização que virtualiza o processador e memória, usando kernel modificado do Linux e virtualizando o I/O usando drivers de dispositivos customizados.


Virtualização Full


A Virtualização Full como tecnologia de primeira geração utiliza traduções binárias e é atualmente a tecnologia disponível mais estável e confiável disponível. Implementações utilizando essa técnica oferecem alta performance de virtualização para sistemas operacionais como Windows e Linux sem a necessidade de alteração do código destes sistemas.

 


Figura - Virtualização cheia

 

A Virtualização Full difere da Paravirtualização, pois o guest OS não é modificado e não sofre alteração fazendo com que todas as operações críticas e sensíveis do OS virtual, sejam capturados usando tradução binária. A proposta da paravirtualização sobre o overhead é menor, mas as vantagens da paravirtualização sobre a virtualização full podem variar de acordo com o workload.

 


Hardware Assisted

 


Os fabricantes de hardware rapidamente abraçaram a virtualização e desenvolveram novas características para simplificar as técnicas de virtualização x86. A próxima geração de hardware possui aprimoramentos que incluem as tecnologias de virtualização Intel (VT-x) e AMD (AMD-v), ambos privilegiam a execução de instruções de CPU com uma nova tecnologia que permite que a VMM rode em um novo modo root abaixo do Ring 0. Este método privilegia as chamadas sensíveis que são automaticamente capturadas pelo hypervisor, removendo a necessidade de tradução binária ou paravirtualização.

 


Figura - Virtualização assistida

 


Nesta técnica, o estado da máquina virtual é armazenado no Virtual Machine Control Structures (VT-x) para família Intel de processadores ou Virtual Machine Control Blocks (AMD-V) para processadores AMD. Essas características representam as futuras gerações de hypervisors que utilizarão os benefícios do hardware assistido para oferecer performance e confiabilidade para as máquinas virtuais.

 

 

Eventos e Oportunidades

Mês anterior Maio 2012 Próximo mês
D S T Q Q S S
week 18 1 2 3 4 5
week 19 6 7 8 9 10 11 12
week 20 13 14 15 16 17 18 19
week 21 20 21 22 23 24 25 26
week 22 27 28 29 30 31

Enquete

Profissional da área de virtualização, qual sua faixa salarial?
 

Quem está online

Nós temos 176 visitantes online

Twitter Feed



Fornecido por VMworld Brazil - Tecnologia e Informação
Brasília - DF (61) 8110 2665 contato@vmworld.com.br