O que é uma máquina virtual - tipos e vantagens

Experimente Nosso Instrumento Para Eliminar Problemas





O conceito de máquina virtual foi introduzido por volta de 1960. É a evolução da técnica de compartilhamento de tempo. No método de compartilhamento de tempo, cada programa tem acesso total a todos os recursos do computador, mas por vez, apenas um programa será executado. O sistema alterna entre programas em intervalos de tempo enquanto salva e restaura os estados do programa a cada vez. Com o uso do método de compartilhamento de tempo, vários usuários podem usar o sistema de computador simultaneamente. Os centros de pesquisa da IBM desenvolveram o método de compartilhamento de tempo como máquinas virtuais. CP-67 foi o primeiro disponível arquitetura de máquina virtual . Sistemas com várias máquinas virtuais em um único host e uma única máquina virtual em vários hosts foram desenvolvidos.

Antes de lançar qualquer novo hardware tecnologia , ele é testado primeiro no emulador para detectar, recriar e reparar as falhas no design e corrigir as etapas necessárias. Da mesma forma, antes de introduzir qualquer novo software, ele é simulado para verificar se há erros e depurá-los. Para fazer esta tarefa, um sistema que pode atuar como um substituto para o ambiente principal para construir novas tecnologias. É aqui que as máquinas virtuais entram em cena. Ele atua como a emulação do sistema do computador, fornecendo toda a funcionalidade do sistema físico.




O que é uma máquina virtual?

Com a introdução de novas tecnologias e modelos de pesquisa mais recentes, muitos produtos de hardware e software estão sendo lançados. Muitos dos softwares dependem da plataforma, portanto, às vezes é difícil depurá-los ou verificá-los devido aos recursos de hardware limitados.

Uma VM (máquina virtual) é uma emulação de um sistema de computador, onde essas máquinas usam arquiteturas de computador para fornecer a funcionalidade de um computador físico. O dispositivo físico no qual as máquinas virtuais funcionam é conhecido como Host, enquanto as máquinas virtuais são conhecidas como Guest. Um único host pode ter vários números de convidados.



Tipos de máquina virtual

A máquina virtual funciona como um computador e é isolada do resto do sistema host. O software do convidado não pode fazer alterações no software do sistema host. Assim, os arquivos de vírus podem ser testados em uma máquina virtual sem afetar o sistema do computador principal. O software de computador que cria e executa a máquina virtual é conhecido como Hypervisor. Com base em suas funções, existem dois tipos diferentes de máquinas virtuais - máquinas virtuais de sistema e máquinas virtuais de processo.

1). Máquinas Virtuais do Sistema


Esses tipos de VMs fornecem virtualização completa. Atuando como substituto da máquina real, eles fornecerão funcionalidades para executar toda uma sistema operacional . Os recursos de hardware são compartilhados e gerenciados, formando vários ambientes no sistema host. Esses ambientes são isolados uns dos outros, mas existem no mesmo host físico. Portanto, eles fornecem compartilhamento de tempo entre vários sistemas operacionais de tarefa única.

Para permitir o compartilhamento de memória entre diferentes máquinas virtuais em um computador sistema operacional , sistemas de supercomprometimento de memória podem ser aplicados. As páginas de memória com conteúdo idêntico podem ser compartilhadas entre várias máquinas virtuais presentes no mesmo host físico. Isso é muito útil para páginas somente leitura.

2). Máquinas virtuais de processo (VM)

Essas VMs também são conhecidas como máquinas virtuais de aplicativos, ambientes de tempo de execução gerenciados. Este tipo de VM é executado como um aplicativo normal dentro do sistema operacional do host, suportando um único processo. É criado com o início do processo e destruído quando o processo termina. É usado para fornecer uma plataforma independente programação ambiente para o processo, permitindo que ele seja executado da mesma maneira em qualquer uma das outras plataformas.

Máquina Virtual de Processo

Máquina Virtual de Processo

Eles são implementados usando intérpretes e fornecem abstrações de alto nível. Eles são usados ​​popularmente para programação Java, que usa a máquina virtual Java para execução de programas. Há um caso especial de uma VM de processo que abstrai o mecanismo de comunicação de um cluster de computador. Eles contêm um processo por máquina física no cluster. Isso ajuda o programador a se concentrar no algoritmo em vez do processo de comunicação fornecido pela interconexão e máquina virtual no sistema operacional . O aplicativo em execução nessas VMs tem acesso a todos os serviços do sistema operacional. Máquina virtual paralela, interface de passagem de mensagens são exemplos dessas máquinas virtuais (VM).

Arquitetura

O software Runtime é o software de virtualização que implementa o Process VM. Ele é implementado no nível de API da arquitetura do computador acima da camada combinada de SO e Hardware. Isso emula as instruções de nível de usuário, bem como chamadas de sistema operacional ou biblioteca. Para a máquina virtual do sistema, o software de virtualização é denominado Virtual Machine Monitor (VMM). Este software está presente entre a máquina de hardware host e o software convidado. O VMM emula o ISA de hardware, permitindo que o software convidado execute um ISA diferente.

Vantagens

Algumas das vantagens das máquinas virtuais são as seguintes-

  • As máquinas virtuais fornecem compatibilidade de software com o software em execução. Assim, todo o software escrito para o host virtualizado também será executado na máquina virtual.
  • Ele fornece isolamento entre diferentes tipos de sistemas operacionais e processos. Assim, o sistema operacional do processador em execução em uma máquina virtual não pode modificar os processos das outras máquinas virtuais e do sistema host.
  • Eles fornecem encapsulamento e o software presente em uma máquina virtual pode ser modificado e controlado.
  • Para o host de vários sistemas operacionais, eles fornecem vários recursos como inicialização dupla, transferência de arquivos entre máquinas virtuais, erro em um sistema operacional não afeta o outro sistema operacional presente no host, sistema operacional freash pode ser adicionado facilmente.
  • Eles fornecem um bom gerenciamento de software, como estes podem executar uma pilha de software completa da máquina host, executar o sistema operacional legado, etc.
  • Aqui é possível compartilhar recursos de Hardware com pilhas de software independentes e para equilibrar a carga, as máquinas virtuais podem ser transferidas para os diferentes computadores.

Assim, os sistemas de computação modernos estão se tornando mais complexos, os quais contêm vários componentes de software e hardware que interagem intimamente. Aqui, a virtualização atua como uma tecnologia de interconexão. As máquinas virtuais fazem subsistemas incompatíveis para trabalharem juntos. Ele também fornece um uso mais flexível e eficaz de recursos de hardware entre vários sistemas operacionais. Eles fornecem interoperabilidade entre hardware, software de sistema e aplicativos. Quais são as diferenças entre o processo Máquina virtual e máquina virtual do sistema?