다음을 통해 공유


O Passo a Passo da Virtualização

Já que vamos abordar o tema virtualização, que tal começarmos pelos primeiros passos?

O que significa “Virtual”?

Antes de mais nada, vamos analisar a palavra “virtual”, tão usada ultimamente. O que isso quer dizer?
Só para reavivar a memória e dar um exemplo... lembram das aulas de ótica? Imagem real e imagem virtual?
Pois é... uma maneira de definir “virtual” é: “o que não é real”. Ou seja, estamos falando de uma farsa, de uma enganação... (será?!)

Calma... não precisamos pegar tão pesado, mas estamos chegando perto do conceito. “Virtual” é algo que finge ser real, e que melhor será quanto mais parecido for com a realidade.

Um mundo virtual como o “Second Life” procura reproduzir todas as nuances do mundo real. O ambiente não existe fisicamente, mas sua intenção é fazer com que as pessoas se “sintam” num mundo real, e que lá encontrem tudo que existe no mundo de verdade, de forma a poder se comportar como se estivessem vivendo (outra vida) no mundo real. O interessante de ambientes virtuais é que podem ser realizadas experiências que não acarretam conseqüências no mundo real, pois estes mundos são isolados um do outro.

E quais foram os primeiros passos?

Ok, já filosofamos bastante sobre o conceito de virtualização. Vamos voltar à nossa vida (real) de Profissionais de TI e lembrar quando usamos isso pela primeira vez?

No mundo dos micros, muita gente teve o primeiro contato com recursos virtuais rodando o MS-DOS. SIM, O VELHO E BOM DOS!!!

Alguns programas levavam uma eternidade para serem instalados no DOS, a partir dos nada velozes disquetes de 3 ½” (para não falar nos de 5 ¼”). O Windows 3.1 era um bom exemplo.

Lembram qual era a mágica da época? Usar um tal de “RAMDRIVE”, que simulava um leitor com um disquete dentro, só que usando memória RAM. Como o tempo de acesso à memória é milhões de vezes menor do que o acesso ao disquete, as leituras (e escritas) ficavam absurdamente mais rápidas. Conclusão: O conteúdo do(s) disquete(s) era copiado de uma vez para a memória (sequencialmente) e depois, quando era acessado de forma randômica, tudo acontecia incrivelmente mais rápido.

Pois é... estamos falando de virtualização no DOS!!! E para ser honesto, o conceito veio de mais longe ainda... em 1960 já se “virtualizava” em mainframes...

Que tal arriscarmos mais um passo?

No Windows 3.1, há mais dois exemplos claros de virtualização.

O primeiro é a “Memória Virtual”. Por mais incrível que possa parecer, é exatamente o contrário do exemplo que acabamos de abordar: enquanto lá se trocava o disco pela memória, no Windows se trocava a memória pelo disco!

Isso porque a interface gráfica fazia com que os programas para Windows precisassem de bem mais memória (que era um recurso caro). Quando faltava memória, o sistema escolhia um punhado de informações que estavam na RAM - mas que não eram usadas há algum tempo - copiava estes dados para o disco e liberava aquela área de memória. Com isso, uma máquina com 64 MB conseguia carregar 128 MB de dados em memória virtual. Claro que 64 MB estavam em memória (física, ou real) e outros 64 estavam em disco (HD), mas para a aplicação, o “gerenciador de memória virtual” fazia parecer que a máquina tinha 128 MB!

O segundo exemplo é um pouco mais complexo. O Windows (desde as primeiras versões) já virtualizava um ambiente DOS para aquelas aplicações desenvolvidas para ambientes monotarefa e que, portanto, não saberiam compartilhar recursos como portas seriais, paralelas, endereçamento de memória, etc.

O “espaço de endereçamento” da memória, por exemplo, era virtualizado. Isso permitia que duas aplicações DOS acessassem diretamente o endereço da memória de vídeo (0xA000), sem conflitos. O Windows se encarregava de “desviar” esses acessos para a janela de cada aplicação, “fingindo” que cada uma delas tivesse um monitor independente. A mesma coisa acontecia com as portas serias e paralelas.

Conclusão

O que vale notar nessa conversa são as razões para utilizar a virtualização. Quando não é conveniente adicionar recursos “reais” para atingir os objetivos (por questões de custo, espaço, complexidade, tempo, etc), utiliza-se recursos “virtuais”, que são disponibilizados por um sistema inteligente a ponto de “simular” a existência dos recursos reais.

No caso do RAMDRIVE, a disco foi virtualizado em memória para aumentar a performance.

Já no caso da memória virtual do Windows, a idéia era manter a funcionalidade da aplicação sem o custo adicional de grandes quantidades de memória.

No terceiro caso, a virtualização garantiu a compatibilidade e a coexistência de aplicações na mesma máquina, sem conflitos.

Nos próximos passos analisaremos mais apliações do conceito de virtualização... Aguarde!

Comments

  • Anonymous
    January 01, 2003
    Oi Rafael! Obrigado! Sugiro que você coloque aqui suas perguntas para compartilhar a discussão com o pessoal (e receber os comentários de outra pessoas também!) Grande Abraço, Luciano

  • Anonymous
    January 01, 2003
    Oi Palma. Excelente post de estréia, realmente é um dos temas cuja importância vem aumentando cada vez mais. Muita boa sorte em sua apresentação no TechEd! Abcs, Priscila Silva

  • Anonymous
    January 01, 2003
    Olá Victor, Vou disponibilizar um PPT que aborda este tema no Skydrive do grupo TechNetBR, em http://technetbr.groups.live.com (assim quem se interessar também pode acessar).

  • Anonymous
    January 01, 2003
    Olá Emerson! Fique à vontade para fazer referências. Aliás, aproveite e faça uma visita ao grupo http://technetbr.groups.live.com. No Skydrive do grupo tem uma pasta sobre virtualização com material que pode ajudar no seu TCC ;) Abraço!!

  • Anonymous
    January 01, 2003
    Olá Fabiano, Obrigado pela força! Fique à vontade para usar os posts, e também para entrar em contato, ok? Grande abraço! Luciano

  • Anonymous
    May 05, 2008
    Parabens pelo post Luciano, mandou super bm ... !!!! Bom, estou fazndo meu TCC c base em virtualização d servidores, espero q naum s importe s eu utilizar alguns d seus posts como material base .... dsd já obrigado. Sucesso p vc smpre

  • Anonymous
    October 02, 2008
    Saudações, Luciano! Seu blog é 10!!! Estou desenvolvendo (TCC) checklist de viabilidade de implantação de virtualização. Você poderia me auxiliar com algumas perguntas (e justificativas) que podem inviabilizar um projeto de virualização (consolidação, desktop e aplicações). Agradeço desde já! []'s

  • Anonymous
    March 06, 2009
    Palma, parabéns pelo material como muitos estou fazendo TCC sobre virtualização. Gostaria de saber se voce teria um material ou uma referencia com enfoque na utilização da virtualização para recuperação de desastres. Ficarei grato com qualquer ajuda que seja possível. Meu contato: varomano@gmail.com Obrigado.

  • Anonymous
    March 14, 2009
    Palma, bom dia.. Parabens pela ideia  e obrigado por compartilhar essas informações sobre virtualização, como varias pessoas estou fazendo meu TCC sobre esse assunto e gostaria de fazer algumas citações fazendo referencia ao seu Blog. Obrigado. Emerson