4.1 VMWare
O VMWare é um dos mais populares arcabouços de virtualização para a arquitetura x86. O VMWare é uma infra-estrutura de virtualização, fornecendo softwares para virtualização desde ambientes desktop a ambientes de data centers. Os produtos disponibilizados dividem-se em três categorias: gerenciamento e automação, intra-estrutura virtual e plataformas de virtualização [9]. O VMWare é executado como se fosse um programa, no espaço de aplicação, dentro de um sistema operacional hospedeiro, o qual fica responsável pela abstração dos dispositivos que serão disponibilizados para o sistema operacional visitante. Para ter acesso mais rápido aos dispositivos, o VMWare instala um driver especial que permite contornar o problema de ter que suportar um amplo conjunto de dispositivos para a arquitetura x86.
Entre os produtos fornecidos pela VMWare, podemos encontrar o VMWare Workstation, Server, Fusion e Player, que são plataformas de virtualização que são executadas em um sistema operacional hospedeiro. No entanto, há outra plataforma, VMWare ESX, que é, por si mesma, um sistema operacional hospedeiro. Este apresenta desempenho melhor que os demais, mas reduz a portabilidade [7].
Na arquitetura do VMWare, a virtualização ocorre a nível de processador. As instruções privilegiadas a serem executadas são capturadas e virtualizadas pelo VMM, enquanto que as outras instruções são executadas diretamente no processador hospedeiro [7].
Os recursos de hardware também são virtualizados. O suporte para os diversos dispositivos é fornecido pelo próprio sistema operacional hospedeiro. Para ter acesso aos dispositivos, o VMWare instala um driver de dispositivo, o VMDriver. Este driver põe a placa de rede em modo promíscuo, recebendo todos os quadros ethernet, e cria uma ponte (bridge), que encaminha os quadros para o sistema hóspede ou para a máquina virtual especificada.
graphic
Figura 4: Virtualização dos dispositivos no VMWare [11].