Blog Formação DEV

Virtualização

Neste artigo será discutido do que se trata a virtualização e qual a importância disso dentro do contexto da programação.
Virtualização
Texto de: Lucas Galdino

O que é?

Falando de uma forma mais técnica, a virtualização é uma tecnologia que cria versões digitais de recursos físicos, como computadores, redes ou armazenamento, permitindo que eles sejam usados de forma mais eficiente e flexível. Com ela, é possível rodar várias máquinas ou programas simulados em um único equipamento físico, economizando espaço e dinheiro. Essa prática é muito comum em serviços de nuvem, data centers e até no dia a dia, pois facilita a criação de ambientes isolados para testes, melhora a segurança e ajuda a aproveitar ao máximo os recursos disponíveis.

Máquinas Virtuais e Hypervisor

Creio que o conceito de uma máquina virtual ou VM já é algo bem estabelecido e conhecido pela grande maioria dos usuários de computadores atualmente. De toda forma, por definição, máquina virtual é um software que simula o funcionamento de um computador físico dentro de outro. Ela permite que você execute sistemas operacionais e aplicativos como se estivesse usando um computador separado, mas, na verdade, está tudo rodando em um ambiente virtualizado, em um hardware físico real.

A partir desse conceito de VM podemos entender o que é um hypervisor, que nada mais é do que um software ou firmware que cria e gerencia máquinas virtuais em um sistema físico. Ele age como um intermediário entre o hardware físico e os sistemas operacionais virtuais, alocando recursos como CPU, memória e armazenamento de forma eficiente entre as VMs. O hypervisor é essencial para a virtualização, permitindo que várias VMs rodem simultaneamente no mesmo hardware físico, de forma isolada e segura.

Desenvolvimento

E onde essas tecnologias afetam de forma mais direta dentro de ambientes de desenvolvimento? Os principais exemplos que serão tratados com mais detalhes neste artigo são o uso das tecnologias Docker, WSL e a utilização de emuladores na hora de se trabalhar com o desenvolvimento de aplicações móveis, para celular. Na grande maioria dos sistemas operacionais é necessário ter um pequeno passo extra relacionado a virtualização quando precisamos trabalhar com tais tecnologias.

Esse pequeno passo é relacionado ao processador das máquinas em que trabalhamos, os processadores modernos, como os da Intel e AMD, possuem tecnologias específicas de virtualização embutidas em seu design. Como, por exemplo, o Intel VT-x (Virtualization Technology) e AMD-V (AMD Virtualization). Essas tecnologias habilitam o suporte a virtualização em nível de hardware, permitindo que hypervisores (como VMware, Hyper-V ou KVM) gerenciem e compartilhem os recursos do processador de forma eficiente entre múltiplas máquinas virtuais.

Alguns fatos importantes, nem todo processador possui tal tecnologia, alguns processadores mais antigos no mercado não possuem tal funcionalidade. Outro pequeno fato é que na grande maioria dos casos é necessário ativar essas tecnologias lá na BIOS da máquina, pois por padrão, ela vem desativada por questões de segurança e compatibilidade. Em resumo, é necessário que essas tecnologias de virtualização dos processadores estejam presentes e também é necessário que essas tecnologias sejam ativadas lá na BIOS da máquina.

Logo, caso você precise trabalhar com as tecnologias que citei aqui vai ser necessário ativar essa função de virtualização do seu processador na BIOS e esse processo pode variar bastante.

Virtualização na BIOS

O processo de ativar a função de virtualização na BIOS é um pouco complexo, pois vai variar com a marca da placa mãe. A BIOS é um software mais leve que está contido em um chip na placa mãe, por conta disso, todo o design do software é baseado em escolhas da empresa que fez a placa. E mesmo tendo alguns padrões nas configurações, vários menus podem estar em locais diferentes ou até mesmo com nomes diferentes, variando bastante de placa para placa.

Existem BIOS bem simples e diretas, como as mais antigas, seguindo o exemplo da imagem anterior ou BIOS bem mais complexas e “enfeitadas” como as de placas mães mais novas e voltadas para o público gamer.

No final das contas, o objetivo desses softwares é o mesmo, configurar as bases da máquina a partir da placa mãe e das conexões que ela tem com as outras peças da máquina, o que inclui o processador. E por conta disso é aqui que iremos encontrar a configuração que irá permitir ativar a virtualização.

Com isso fica complicado criar um tutorial 100% válido para ativar essa função, pois a variedade de marcas, modelos e versões de BIOS é imensa atualmente. Por conta disso, como se deve fazer essa mudança é mediante uma simples pesquisa sobre sua placa mãe. Utilizando uma placa mãe qualquer como exemplo, podemos simplesmente pesquisar pela marca, modelo e as palavras “bios” e “virtualização” para encontrar algum tutorial online, seja em texto ou vídeo, para conseguir chegar no resultado esperado.

Pesquisando

Antes de tudo, é necessário ter o exato modelo da sua placa mãe, é possível encontrar essa informação na caixa da mesma ou com alguma pesquisa no seu sistema operacional. Dentro do Windows é possível descobrir essa informação dentro do menu “Propriedades” do “Este Computador” na sua pesquisa da barra de tarefas, ou procurando o menu “Sobre” nas configurações gerais da máquina. No Linux é possível encontrar essa informação dentro do menu “About/Sobre” nas configurações gerais do sistema.

Uma vez com essa informação em mãos é possível recorrer à pesquisa, vou utilizar minha placa como exemplo para a pesquisa, no meu caso, a placa é uma “B550M Aorus Elite”. É importante ser pesquisado o exato nome na caixa da placa mãe, pois a variação de modelos também pode refletir na variação da BIOS. Irei pesquisar dessa forma:

E os resultados serão, em sua maioria, vídeos:

A partir daqui basta checar se a BIOS mostrada no vídeo é igual ou similar a sua e fazer o passo a passo descrito ou comentado. De forma bem resumida e genérica, o resultado que queremos é alterar um valor na BIOS que está marcado como “Disabled/Desativado” para “Enabled/Ativado”, sendo esse valor, a tecnologia de virtualização. Assim como nesses exemplos:

Conclusão

A tecnologia de virtualização é necessária em diversas atividades que um desenvolvedor pode ter durante sua carreira, então é importante saber um pouco sobre ela.

Também pode parecer um pouco complexo e intimidador fazer a ativação dessa tecnologia, uma vez que envolve a temida BIOS da máquina, mas é um processo simples e rápido e que não afetará seu sistema de outras formas.

Sobre o autor
Cod3r

Cod3r

Com mais de 400 mil alunos, a Cod3r é uma das principais escolas de tecnologia do País. Um de seus produtos mais importantes é a Formação DEV, com objetivo de preparar os profissionais para o mercado.

Ótimo! Inscreveu-se com sucesso.

Bem-vindo de volta! Registou-se com sucesso.

Assinou com sucesso o Blog Formação DEV .

Sucesso! Verifique o seu e-mail para obter o link mágico para se inscrever.

As suas informações de pagamento foram atualizadas.

Seu pagamento não foi atualizado.