Escolar Documentos
Profissional Documentos
Cultura Documentos
Topico 02 - Virtualização
Topico 02 - Virtualização
Amigo estudante! Já estamos entendidos acerca do que iremos estudar nesta disciplina
de Administração de Sistemas Operativos, pois não? Obviamente que a tua resposta
será “sim”, pois já sabes o que é administrar e, particularmente, administrar um SO. Já
sabes concretamente que actividades esperam-te como administrador de SO. Pois bem,
para podermos executar todas as actividades de administração de um SO, precisamos,
obviamente de um SO instalado em um computador. Isto significa que a nossa primeira
actividade deverá consistir na instalação deste(s) programa(s).
Para materializarmos esta nossa primeira actividade iremos recorrer a um processo que
permite-nos “criar um computador por cima de um outro”, ou seja, a virtualização.
Neste tópico iremos discutir sobre a virtualização, seus benefícios e seu funcionamento.
Iremos igualmente falar dos métodos de virtualização e do hardware na virtualização.
Trataremos de analisar algumas soluções de virtualização. No fim analisaremos as
desvantagens da virtualização.
SO – Sistema Operativo;
VM Virtual Machine;
MV – Máquina Virtual;
Conceito de Virtualização
Figure 1: Virtualização
Fonte: infowester.com
executar vários sistemas sem ter que formatar o nosso computador (claro que para isso
a nossa máquina física deve reunir requisitos como boa capacidade de armazenamento,
boa capacidade de processamento, memória, etc).
Um mainframe é um Uma das razões para o surgimento da virtualização é que, anos
computador de grande
porte capaz de realizar atrás, na época em que os mainframes dominavam o cenário
processamento de dados
tecnológico e não havia computadores pessoais, por exemplo,
complexos. Os mainframes
são usados como sistemas não existia a praticidade de "adquirir, instalar e usar um software"
centrais em grandes
organizações (empresas, - este era acompanhado de bibliotecas e outros recursos que o
instituições, etc.). tornavam quase que exclusivo ao computador para o qual foi
Saiba mais em: desenvolvido originalmente.
http://pt.okpedia.com/mai
nframe,
https://pt.wikipedia.org/wi
ki/Mainframe.
Desta forma, muitas vezes uma organização que implementava
um novo sistema via-se obrigada a adquirir um equipamento
apenas para executá-lo, em vez de simplesmente aproveitar o
maquinário existente, deixando toda a operação mais cara no
Uma máquina virtual (MV),
do original em inglês final das contas.
virtual machine (VM), é
uma implementação de
ambiente computacional
onde pode‐se instalar e
executar um sistema A virtualização conseguiu resolver este problema: pode-se
operativo.
aproveitar um computador já existente para executar dois ou
A MV emula um
computador físico comum, mais sistemas distintos, já que cada um executa dentro de
onde as requisições de
sua própria máquina virtual. Evita-se, assim, gastos com novos
CPU, memória, disco, rede
e outros hardwares são equipamentos e aproveita-se os possíveis recursos ociosos do
geridos pela camada de
virtualização, que traduz computador.
essas requisições para o
hardware original.
Funcionamento da virtualização
Depois que já sabes o que é a virtualização e quais os benefícios que traz para a ciência
da computação, acredito, caro estudante, que a tua dúvida agora é: Então, como é que
isto funciona? Como é possível ter vários SOs a executarem na mesma máquina física?
Que magia será esta? Calma, já já compreenderás.
A forma como host e guest trabalham varia conforme a solução. Em um método bastante
comum há a figura do VMM (Virtual Machine Monitor - Monitor de Máquina Virtual), que
também pode ser chamado de hypervisor: trata-se de uma espécie de plataforma
implementada no host que recebe os sistemas a serem virtualizados, controlando os
seus recursos e mantendo-os "invisíveis" e “independentes” uns dos outros.
Para que possa fazer o seu trabalho, o VMM tem um tratamento diferenciado: ele pode
ser executado no "modo supervisor", enquanto programas comuns (aplicativos) rodam
no "modo user".
No "modo supervisor", o software pode requisitar instruções que lidam diretamente com
certos recursos de hardware, como funcionalidades específicas do processador. No
"modo user", estes recursos mais críticos não podem ser acedidos diretamente, cabendo
ao SO, que trabalha em "modo supervisor", fazer uma espécie de intermediação quando
necessário.
O VMM precisa ter acesso privilegiado porque cabe a ele alocar os recursos a serem
utilizados por cada máquina virtual sob sua responsabilidade, assim como determinar a
ordem pela qual cada solicitação destas será atendida.
A paravirtualização surge como uma solução para problemas desse tipo. Nela, o SO do
guest roda em uma máquina virtual similar ao hardware físico, mas não equivalente.
Com este método, o guest é modificado para recorrer ao hypervisor quando necessitar
de qualquer instrução privilegiada e não diretamente ao processador. Assim, o VMM não
precisa interceptar estas solicitações e testá-las (tarefa que causa perda de
desempenho), como acontece na virtualização total.
Além disso, a paravirtualização diminui expressivamente os problemas com
compatibilidade de hardware porque o SO do guest acaba podendo utilizar drivers
adequados - na virtualização total, os drives disponíveis são "genéricos", isto é, criados
para suportar o máximo possível de dispositivos, mas sem considerar as particularidades
de cada componente.
O VMM não é a única técnica de virtualização que existe. Para que possa atender às
mais variadas necessidades, vários métodos foram (e são) desenvolvidos. Entre os
demais, tem-se o PVM (Process Virtual Machine), o OSVM (Operating System Virtual
Machine) e a virtualização assistida por hardware.
Neste método, a MV funciona como uma aplicação qualquer rodando dentro do SO. Um
dos exemplos mais populares de MVs deste tipo é a linguagem de programação Java:
nela, quando um programa é compilado, um código específico é gerado para ser
executado por uma JVM (Java Virtual Machine - Máquina Virtual Java).
O VMM é uma camada de software diretamente ligada ao
hardware, por isso, permanece activo durante todo o tempo em
que o computador permanecer ligado. No PVM, a MV é tratada
como um processo, como o seu nome indica. Assim, quando a
Aqui, a máquina física recebe um SO, mas há a criação de vários ambientes virtuais
sobre este. Cada um destes ambientes tem acesso a determinados recursos, como
espaço em disco e quotas de processamento, mas compartilham do mesmo kernel
(núcleo, isto é, a parte principal do SO). Normalmente, um ambiente não sabe da
existência do outro.
Hardware na virtualização
Até agora, lidamos com a virtualização como sendo uma variedade de técnicas baseadas
em software. Contudo, nela o hardware também pode ter participação importante.
Empresas como Intel e AMD, as maiores fabricantes de processadores do mundo,
desenvolveram (e desenvolvem) tecnologias que possibilitam aos seus chips um
trabalho aprimorado em soluções de máquinas virtuais, especialmente no que diz
respeito à virtualização total.
No caso da Intel, muitos de seus processadores atuais contam com a tecnologia Intel
Virtualization Technology (Intel VT), que consiste em um conjunto de instruções
aplicadas ao chip especialmente para tratar de tarefas de virtualização. A AMD tem uma
tecnologia equivalente (não há compatibilidade de uma com a outra), de nome AMD
Virtualization (AMD-V).
VMware
Microsoft
Mas o destaque mesmo fica por conta do Hyper-V, uma solução de virtualização que é
integrada à linha de SOs para servidores da empresa (como o Windows Server 2012),
embora também funcione em determinadas versões para uso doméstico ou em
escritórios (como o Windows 8).
Tendo como base o conceito de hypervisor, o Hyper-V consegue lidar com vários
cenários de virtualização, inclusive aqueles de alto desempenho, podendo trabalhar, por
exemplo, com data centers virtuais.
Entre os vários recursos do Hyper-V estão uma funcionalidade que permite passar
máquinas virtuais de um servidor para outro (para que o primeiro seja reparado, por
exemplo) e a capacidade de criar réplicas - é possível ter um número ilimitado de "cópias"
de virtual machines para utilizá-las em testes ou cobrir imediatamente um serviço que
ficou indisponível.
Xen
Xen é outro nome bastante forte quando o assunto é virtualização. Trata-se de uma
solução baseada em VMM que teve seu desenvolvimento promovido pela Universidade
de Cambridge, no Reino Unido. O projeto é compatível com várias plataformas e
arquiteturas. É disponibilizado como software livre e é gratuito. O seu código-fonte pode
ser acedido por qualquer pessoa. Por isso, o seu uso é bastante difundido no meio
acadêmico e por entusiastas de sistemas Linux, por exemplo.
Em 2007, a XenSource, companhia que mantinha o projeto, foi comprada pela Citrix,
outra grande empresa do segmento de virtualização. Assim, também é possível
encontrar soluções pagas desta que levam o nome Xen.
VirtualBox
O VirtualBox é um projeto iniciado em 2007 por uma empresa alemã de nome Innotek,
mas que hoje pertence à Oracle. A sua proposta é a de permitir ao utilizador rodar um
SO dentro de outro sem enfrentar complexidade.
Desvantagens da virtualização
Amigo estudante. Acredito que conheces muito bem aquele velho ditado Segundo o qual
“onde há vantagens há desvantagens”. Pois é, no início deste texto mencionamos os
benefícios da virtualização. Porém, como na vida nem tudo é um mar de rosas, esta
solução não pode ser vista como a chave-mestre dos problemas de TI, dependendo das
circunstâncias, também pode ter desvantagens, senão vejamos: