Introdução à Virtualização 💽
Com o avanço da tecnologia, tornou-se comum a utilização de sistemas virtuais para executar testes, simulações ou até mesmo operar serviços reais. Nesta aula, vamos entender o que é virtualização, como ela funciona, por que ela é tão usada em ambientes profissionais e educacionais, e como ela está presente em muitas situações do nosso cotidiano – até sem que a gente perceba.
Compreender o conceito de virtualização.
Identificar vantagens e desvantagens da virtualização.
Conhecer softwares de virtualização populares.
Reconhecer o uso da virtualização no dia a dia e no mercado.
Diferenciar máquinas físicas e máquinas virtuais.
Compreender o papel do hypervisor.
A virtualização é a criação de um ambiente simulado (virtual), dentro do próprio computador, que funciona como se fosse uma máquina física completa. Esse ambiente é chamado de máquina virtual (VM).
Dentro dessa máquina virtual, é possível instalar um sistema operacional e utilizá-lo normalmente, como se fosse um computador separado. Tudo isso acontece através de um software que utiliza parte dos recursos do computador real (memória, processador, disco).
O computador real é chamado de host (anfitrião). Já a máquina virtual criada dentro dele é chamada de guest (convidado).
Para que essa interação aconteça, é utilizado um programa chamado hypervisor. Existem dois tipos:
Hypervisor tipo 1: roda direto no hardware (ex: VMware ESXi, Hyper-V Server).
Hypervisor tipo 2: roda sobre um sistema operacional (ex: VirtualBox, VMware Workstation).
No nosso caso, vamos utilizar o VirtualBox, um hypervisor tipo 2.
VirtualBox: Gratuito, multiplataforma, muito usado em laboratórios e escolas.
VMware Workstation: Profissional, com mais recursos, mas é pago.
Hyper-V: Integrado ao Windows Pro/Enterprise.
QEMU e KVM: Utilizados principalmente em servidores Linux.
Proxmox: Sistema completo de gerenciamento de máquinas virtuais, comum em ambientes corporativos.
Instalar e testar sistemas operacionais sem formatar o computador.
Executar mais de um sistema ao mesmo tempo (ex: Linux e Windows).
Criar ambientes isolados para testes e simulações.
Reduzir custos com equipamentos físicos.
Utilizado em servidores e data centers para rodar centenas de máquinas em um único servidor físico.
Maior consumo de recursos (RAM, CPU, espaço em disco).
Desempenho inferior ao de um sistema instalado diretamente.
Alguns programas que exigem acesso direto ao hardware podem não funcionar corretamente (ex: jogos 3D, placas específicas).
Pode ser limitada em computadores com pouco poder de processamento.
Empresas de hospedagem: hospedam centenas de sites usando máquinas virtuais.
Escolas e universidades: alunos testam sistemas sem risco de danificar os computadores reais.
Empresas de TI: ambientes de teste, servidores de backup, redes simuladas.
Computação em nuvem: Amazon Web Services, Google Cloud e Microsoft Azure usam virtualização como base de tudo.
Virtualização de hardware: emula um computador completo (como veremos com o VirtualBox).
Virtualização de software/aplicação: roda um programa isoladamente em ambiente simulado.
Virtualização de desktop: toda a área de trabalho é executada remotamente (muito usada em empresas).
Virtualização de rede: cria redes virtuais independentes da rede física.
Imagine que um programador quer testar seu aplicativo tanto no Windows quanto no Ubuntu. Com a virtualização, ele pode abrir duas máquinas virtuais no mesmo computador e realizar os testes simultaneamente, sem precisar reiniciar ou ter duas máquinas físicas diferentes.
Você sabia que até videogames podem ser simulados com virtualização? Muitos emuladores usam o mesmo princípio: simular o hardware e o sistema original para rodar os jogos.
Também é por meio da virtualização que sistemas como o Android podem ser testados por desenvolvedores no PC, antes de serem lançados para o público.
Emulador:
Finge ser um dispositivo ou sistema diferente, imitando o comportamento do hardware ou software original.
👉 Exemplo: O Citra emula um Nintendo 3DS sem usar o sistema real, apenas recriando o ambiente necessário para o jogo funcionar.
Máquina Virtual:
É um sistema operacional completo rodando dentro de outro sistema, gerenciado por um hypervisor.
👉 Exemplo: Usar o VirtualBox para rodar o Linux dentro do Windows.
O emulador de Android (AVD) do Android Studio usa simulação por meio de virtualização (baseado em QEMU, uma tecnologia de virtualização).
Já o emulador de Super Nintendo (SNES9x) apenas imita o comportamento do console — sem virtualizar um sistema operacional completo.