You are on page 1of 12

Sumrio

Introduo ........................................................................................................... O que a Virtualizao ........................................................................... Modo Real e Protegido ........................................................................... Funcionamento .................................................................................................... Tipos de Virtualizao ............................................................................. Tcnicas de Virtualizao ........................................................................ Benefcios ............................................................................................................ Particionamento ....................................................................................... Isolamento ................................................................................................ Encapsulamento ....................................................................................... Estudo de Caso ..................................................................................................... VMware .................................................................................................... Dispositivos e VMWare ........................................................................... Teste ......................................................................................................... Bibliografia .......................................................................................................... 01 01 02 03 04 04 06 06 06 06 07 07 09 10 11

Introduo
Nos anos 1960 foi introduzido a virtualizao, permitindo o particionamento de grandes mainframes, um raro e caro recurso. Com o passar do tempo, microcomputadores e PCs forneceram mais eficincia e uma melhor forma de distribuir o poder de processamento das mquinas, ento, perto dos anos 1980, a virtualizao no era mais empregada extensamente. Nos anos 1990, pesquisadores comearam a enxergar que a virtualizao poderia resolver alguns dos problemas associados proliferao de hardware mais baratos, incluindo subutilizao, custos de gerenciamento e vulnerabilidade. Hoje, a virtualizao est em primeiro plano, ajudando negcios com escalabilidade, segurana e gerenciamento de infraestrutura global de TI. O que a Virtualizao Virtualizao uma abstrao de camada que separa o hardware fsico do sistema operacional para fornecer otimizao de utilizao de recursos de TI e flexibilidade. A IBM define uma mquina virtual como uma cpia totalmente protegida e isolada de um sistema fsico. A virtualizao permite que mltiplas mquinas virtuais, com sistemas operacionais heterogneos executem isoladamente, lado a lado um uma mesma mquina fsica. Cada mquina virtual tem seu prprio hardware virtual (por exemplo: RAM, CPU, NIC, etc.) em cima do qual um sistema operacional e aplicaes so carregados. O sistema operacional enxerga o hardware como consistente, um conjunto de hardware em relao aos componentes fsicos de hardware atual. Mquinas virtuais so encapsuladas em arquivos, as tornando fcil de serem salvas, copiadas e de se prover uma mquina virtual. Sistemas completos (com aplicaes totalmente configuradas, sistema operacional, BIOS e hardware virtual) podem ser movidos, em questo de segundos, de um servidor fsico a outro para manuteno em tempo mnimo e continuamente consolida a carga de trabalho. Segue abaixo uma figura que mostra as camadas em um sistema virtualizado:

Com esta tcnica, um nico processador pode funcionar como se fosse vrios processadores trabalhando em paralelo, permitindo ao micro rodar vrios sistemas operacionais ao mesmo tempo. Por isto algumas pessoas confundem virtualizao com multitarefa. Em um modelo multitarefa, existe um nico sistema operacional e vrios programas trabalhando em paralelo. J no modelo de virtualizao voc pode ter vrios sistemas operacionais trabalhando em paralelo, cada um com vrios programas distintos em execuo. Cada sistema operacional roda em um processador virtual, ou seja, em uma mquina virtual. A figura abaixo mostra o funcionamento de um sistema operacional multitarefa e um modelo de virtualizao:

Modelo de multitarefa.

Modelo de virtualizao.

Modo real e modo protegido Processadores acima do i80386 possuem dois modos de operao bem distintos: o modo real e o modo protegido. No modo real o processador funciona como se fosse um i8086, o processador utilizado no primeiro PC. Isto significa que ele utilizar instrues de 16 bits e, o que pior, conseguir acessar somente a 1 MB de memria. o caso do sistema MS-DOS: sua grande limitao trabalhar apenas no modo real, o que faz com que ele acesse somente 1 MB de memria (destes 1 MB, 640 KB destinado memria RAM). No modo protegido, o processador consegue trabalhar no topo de sua performance: alm de instrues de 32 bits, consegue acessar a at 4 GB de memria, alm de diversos outros recursos, em especial a multitarefa, a memria virtual e o modo virtual i8086.

Funcionamento
Recentemente as maiores fabricantes de processadores do mercado, Intel e AMD, desenvolveram otimizaes no hardware, com novas instrues de CPU, para uso especfico de virtualizao de sistemas operacionais. A tecnologia da Intel se chama Vanderpool e a da AMD de Pacifica, e ambas permitem que um processador funcione como se fossem vrios processadores trabalhando em paralelo de modo a permitir que vrios sistemas operacionais sejam executados ao mesmo tempo em uma mesma mquina.

Os processadores com tecnologia de virtualizao possuem um conjunto de instrues extra chamado Virtual Machine Extensions (Extenses de Mquina Virtual) ou VMX, que traz 10 novas instrues especficas de virtualizao para o processador, e so elas: VMPTRLD, VMPTRST, VMCLEAR, VMREAD, VMWRITE, VMCALL, VMLAUCH, VMRESUME, VMXOFF e VMXON. Existem dois modos de execuo dentro da virtualizao: root e no-root. Normalmente apenas o software de controle da virtualizao, chamado Virtual Machine Monitor (VMM), roda no modo root, enquanto que os sistemas operacionais trabalhando no topo das mquinas virtuais rodam no modo no-root. Programas sendo executados no topo das mquinas virtuais so tambm chamados programas convidados. Para entrar no modo de virtualizao, o programa deve executar a instruo VMXON e ento chamar o software VMM (Virtual Machine Monitor). Feito isso, o software VMM pode entrar em cada mquina virtual usando a instruo VMLAUNCH, e sair delas usando a instruo VMRESUME. Se a VMM quiser parar todas as mquinas virtuais e sair do modo de virtualizao, ela executa a instruo VMXOFF.

Segue abaixo uma imagem que demonstra o uso de algumas instrues:

Operao da tecnologia de virtualizao.

Cada convidado mostrado na figura acima pode ser um sistema operacional diferente, rodando o seu prprio software ou at mesmo vrios programas ao mesmo tempo. Tipos de Virtualizao 1. Emulador: - o oposto da mquina real - Implementa todas as instrues realizadas pela mquina real em um ambiente abstrato de software - Engana, fazendo com que todas as operaes da mquina real sejam implementadas em um software - Interpreta um cdigo desenvolvido para outra plataforma. 2. VMM Virtual Machine Monitor: - Conhecida como Hypervisor - Fornece uma interface (atravs da multiplexao do hardware) que idntica ao hardware subjacente e controla uma ou mais mquinas virtuais - Pode ser implementado entre o hardware e o SO hospedeiro ou como um processo do SO hospedeiro O VMWare um bom exemplo do modelo. A maior vantagem dessa abordagem a flexibilidade: um poderia rodar um SO baseado em RISC em um hospedeiro baseado em arquitetura Intel. Enquanto essa abordagem bvia, h significantes problemas de performance em tentar emular um conjunto completo de hardware em software. Mesmo com complexas otimizaes, muito difcil alcanar utilizvel performance de um meio completamente virtualizado. Tcnicas de Virtualizao 1. Virtualizao Total - Uma estrutura completa de hardware virtualizada - Sistema convidado no precisa sofrer qualquer tipo de alterao - Grande compatibilidade - Perda de velocidade.

2. Paravirtualizao - O sistema que vai ser virtualizado sofre modificaes para que a interao com o monitor de mquinas virtuais seja mais eficiente - Perde compatibilidade - Ganha velocidade 3. Re-compilao dinmica - Transforma o executvel em outro executvel, compatvel com a nova plataforma, atravs de descompilao, desmontagem e montagem e compilao - Baixo desempenho

Benefcios de Virtualizao
Particionamento: - Mltiplas aplicaes e sistemas operacionais podem ser executados em um nico sistema fsico. - Servidores podem ser consolidados em mquinas virtuais, escalando arquiteturas. - Recursos computacionais so tratados em uma poltica uniforme para que sejam alocadas mquinas virtuais de maneira controlada. Isolamento: - Mquinas virtuais so completamente isoladas da mquina hospedeira e de outras mquinas virtuais. Se uma mquina virtual tem problemas, todas as outras no so afetadas. - Dados no vazam entre mquinas virtuais e aplicativos podem somente se comunicar em conexes de rede configuradas. Encapsulamento: - Um completo ambiente de mquina virtual salvo em um simples arquivo, fcil de fazer backup, de ser movido e copiado. - Padronizao de hardware virtualizado fornecida para a aplicao, garantindo compatibilidade.

Estudo de caso
VMware O VMWare um software que cria mquinas virtuais que simulam um computador dentro de uma janela (ou em tela cheia), permitindo instalar praticamente qualquer sistema operacional para a plataforma x86. possvel at mesmo abrir vrias mquinas virtuais simultneamente e rodar lado a lado vrias verses do Linux e Windows, BeOS, DOS e o que mais voc tiver em mos. Cada mquina virtual trabalha como um PC completo, com direito at a BIOS e configurao do Setup. Dispositivos como o CD-ROM e drive de disquetes podem ser compartilhados entre as mquinas virtuais e o sistema host, em alguns casos at mesmo simultneamente (um CD no drive pode ser acessado em todos os sistemas). Os arquivos so armazenados em "discos virtuais" que aparecem como arquivos dentro da pasta do VMWare no sistema host e cada sistema operacional pode ter uma configurao de rede distinta, com seu prprio endereo IP e tudo mais. As mquinas virtuais ficam acessveis na rede, como se estivessem realmente rodando isoladamente em um computador, permitindo que voc rode um servidor Web ou um programa P2P dentro de uma mquina virtual, sem comprometer a segurana do seu sistema principal. Cada mquina virtual possui uma rea reservada de memria. Se voc tiver 386 MB por exemplo, voc pode instalar o Windows XP sobre o Mandrake 9.1 e deixar 196 MB para cada um. Com pouca memria RAM as coisas j ficam mais complicadas, pois voc ter que reservar pouca memria para cada sistema e tudo ficar lento por causa da memria virtual. O ideal para usar o VMware ter pelo menos 256 MB de RAM e mais 128 MB para cada mquina virtual que voc pretenda usar simultaneamente. O Vmware oferece basicamente 3 tipos de sistemas de mquinas virtuais: Workstation, GSX Server e ESX Server. O Workstation e o GSX Server podem funcionar no Windows ou no Linux, j o ESX Server funciona isoladamente, sem precisar de um sistema operacional pr-instalado, rodando diretamente sobre o hardware. Para entender como o Workstation instala e funciona, ajuda se voc conhecer como a arquitetura IA32 funciona. Na arquitetura IA32, os mecanimos de proteo do 4 nveis de privilgios, 0 at 3. Os nveis tambm so normalmente interpretados como anis (veja a figura). Os processadores Intel tambm possuem modos de operao: Modo Real e Modo protegido, junto com o modo Virtual-86. Esses nveis de privilgios existem somente no modo protegido Voc provavelmente sabe que o DOS funcionava em modo real e o Windows 9x/ME era em sua maior parte em modo protegido. O Windows 2000 e XP so 32 bit funcionam em modo protegido, juntamente com o Unix e o Linux. O modo Virtual-86 mais usado para rodar o shell do DOS dentro do Windows, esse modo pode somente suportar ambiente em modo real. Todos esses modos (Real, Protegido e Virtual-86 podem funcionar tranquilamente dentro da mquina virtual do VMWare, a Workstation).

Teoricamente, de acordo com a Intel, o kernel do sistema operacional funciona no nvel 0 (ou anel 0), os drivers dos dispositivos no anel 1 e 2, e as aplicaes no anel 3. Na prtica, a maioria dos sistemas operacionais funciona completamente no anel 0 e aplicaes no anel 3. As instrues do processador tais como aquelas usadas para a manipulao da interrupo so somente acessveis do anel 0, se uma aplicao em modo protegido tentar acessar a memria diretamente atravs da CPU, vai causar uma General Protection Exception. Quando o Workstation instalado, ele cria trs componentes, o VMX driver, o Monitor de mquina Virtuais (VMM) e o VMware application (Vmapp). O VMX driver e o VMM operam no anel 0. O Vmapp opera no anel 3 e enxerga o sistema operacional como qualquer outro software. Durante a instalao, o VMX driver instalado dentro do sistema operacional, ganhando alto nvel privilegios, que esses drivers precisam para funcionar. Quando executado, o software (atravs do VMX driver), carrega o VMM dentro do espao de memria do Kernel (do sistema operacional hospeiro), ganhando os privilgios de funcionamento do anel 0. Nesse ponto, o sistema operacional hospedeiro somente sabe sobre o VMX driver e o Vmapp, e no tem idia do VMM. Tambm nesse ponto, o computador contm dois mundos -- o mundo do sistema operacional hospedeiro e o mundo do VMM. O mundo do VMM pode comunicar diretamente com o processador or atrves do driver VMX (no mundo do hospedeiro). Quando a troca de mundos acontece, entre os mundos do VMM e do sistema operacional hospedeiro, todos usurios e estados da CPU devem ser salvos, o que tira a performace, comparado com um sistema real.

Quando o sistema operacional virtual est funcionamento, ele funciona sozinho com a CPU, atravs do VMM. Todas as instrues de I/O (entrada e saida) so interceptadas por VMM e enviadas para o sistema operacional hospedeiro. Uma vez no mundo do sistema operacional hospedeiro, a VMapp executa o pedido de I/O (tal como ler hd, ou de acesso de rede) em nome do VMM como chamadas padres do sistema operacional. Por exemplo, um pedido para ler setores do hd traduzido a um read() por VMapp para ler os dados. Os dados so retornados do sistema operacional hospedeiro atravs do driver VMX e o VMM. Dispositivos e o VMware O VMWare pode funcionar com uma variedade de dispositivos dentro do sistema operacional hospedeiro, mas ele mesmo est limitado atualmente a alguns tipos de dispositivos, normalmente por no haver drivers para fazer funcion-los. Quando instalado o sistema operacional em um computador, ele pode comunicar diretamente com o hardware (teclados, portas de impresso, discos-rgidos), atravs de drivers. Qualquer hardware instalado no computador vai precisar de um driver. Um dos objetivos do VMware prover um ambiente igual ou simular para o sistema operacional a ser instalado (virtual). Quando criado uma mquina virtual, por padro ela suporta os dispositivos mais comuns, como um teclado ou mouse PS/2, driver de disquete, controladoras de discos IDE e drivers de CDROM. Voc pode usar uma placa de som, porta serial e paralela. O VMware tambm consegue funcionar usando um controlador virtual SCSI, uma placa de rede, com um controlador de video SVGA. A maioria dos dispositivos so emulados atravs de drivers comuns, porque a maioria dos sistemas operacionais j possuem esses drivers. Ou seja, se voc tiver uma placa de video de ltima gerao, ela vai funcionar dentro do VMware como uma placa comum SVGA.

10

Comparao de desempenho do VMware

A performace do VMware no igual a de um sistema operacional funcionando diretamente sobre o hardware, principalmente no desempenho grfico (video). O recomendado para usar uma mquina virtual do VMware um processador PII 400Mhz, com no mnimo de 128 Mb de RAM. Na criao de uma mquina virtual, possivel escolher quanto de memria, espao em disco ser dedicada ao sistema operacional virtual. Com certeza ter mais memria melhora o desempenho das mquinas virtuais. A velocidade das aplicaes podem variar, dependendo dos recursos do computador. Se a aplicao usa muito o processador, a performace no ser muito boa, mas possvel us-lo. Caso contrrio, quase imperceptivel a diferena; Teste Sistema operacional: Windows 2000 Software de medio: WinBench 99 v. 2.0 Computador: PIII 1GHz Dell 4100, 256MB RAM, HD WD 40GB 7200RPM, 32MB nVidia GeForce2 A mquina virtual foi instalada em um hd de 4 Gb com 176 Mb de RAM, o mximo recomendado para esse tipo de computador. Para notar a diferena de velocidade, foi usado o software CPUmark 99 e o FPUmark 99 (parte do WinBench 99). Quando executado os testes, o resultado foi evidente, a mquina virtual 13% mais lenta que a mquina real, mas a pior diferena na comparao de desempenho da placa de video com o driver nVidea (mquina real) contra o driver SVGA (mquina virtual), o resultado algo de 90% mais lento.

11

Bibliografia
http://www.via-rs.net/profissionais/castro/win95/cap01.htm http://www.extremetech.com/article2/0,1697,10403,00.asp http://en.wikipedia.org/wiki/Comparison_of_virtual_machines http://www.pcmag.com.br/index.php? option=com_content&task=view&id=136&Itemid=32 Vmware - http://www.vmware.com http://www.idealintegrations.net http://www.clubedohardware.com.br http://www.anandtech.com

12

You might also like