Decidindo entre a máquina virtual ou a configuração de inicialização dupla

26

Gostaria de configurar um PC para rodar o ubuntu a maior parte do tempo, mas também preciso rodar o XP para aplicativos e testes específicos. No passado, eu teria simplesmente configurado uma máquina de inicialização dupla e, em seguida, reiniciado e inicializado no Windows XP, conforme necessário.

No entanto, como a máquina possui vários núcleos e memória significativa, acho que posso usar os hipervisores Virtual Box, Xen ou VMWare. Estou pensando em tornar o Ubuntu a VM "host" e ter o XP como uma VM convidada. Isso seria especialmente bom para teste / depuração / desenvolvimento, pois é possível executar aplicativos nos dois sistemas operacionais simultaneamente. Eu nunca configurei uma máquina virtual antes e acho que, fazendo as perguntas abaixo, posso evitar tentativas e erros.

Basicamente, preciso decidir se uma inicialização dupla ou uma configuração de VM é mais apropriada para o que eu quero fazer.

Aqui estão as minhas perguntas:

  1. Nem sempre preciso ter o XP em execução. Os hipervisores permitem que eu desligue a VM convidada para que a VM host possa usar imediatamente todos os recursos de memória e processador? Quando eu ligo a VM convidada, é fácil provisionar quanta memória e outros recursos são usados ​​por ela? Idealmente, eu gostaria de pré-configurar isso com antecedência e depois ativar / desativar a VM convidada sem pensar nisso.

  2. É possível ou aconselhável que o SO host seja de 64 bits e o convidado seja de 32 bits? Como alternativa, se as duas VMs são de 32 bits e eu tenho 8G de RAM, o hipervisor pode fornecer a cada VM 4G de RAM quando estiverem em execução simultaneamente?

  3. Quais hipervisores são melhores para configurações como eu descrevi?

Angelo
fonte
O VMware é melhor se você usar o XP como sistema operacional host. O Virtual Box é melhor se você usar o Ubuntu como sistema operacional host.
Aprendiz curioso

Respostas:

17

Pela minha experiência, é uma boa ideia executar um SO usado com menos frequência em uma máquina virtual. Isso evita reinicializações e facilita a troca de dados entre os dois mundos. Como regra geral, devemos ter o SO com o qual trabalhamos mais como SO host para executar o SO convidado que não usamos com tanta frequência.

Do meu lado, só posso falar pelo Virtual Box, pois tenho muito pouca experiência com outras soluções. No entanto, o Virtual Box é estável, gratuito e disponível em várias plataformas. Eu recomendo.

Os inconvenientes e as vantagens de uma máquina virtual estão resumidos nesta resposta , portanto não os repetirei aqui.

Apenas uma coisa: além disso, se você desenvolver um software, poderá achar bastante agradável que o bug fique louco apenas em uma máquina virtual.

Para responder às suas perguntas:

  1. Sim, você pode simplesmente desligar o sistema operacional convidado para ter todos os recursos de volta ao host. Você pode até salvar um estado de máquina para continuar seu trabalho depois de acordá-lo novamente.

  2. A arquitetura realmente não importa. Eu executo máquinas de 64 bits e máquinas de 32 bits no meu host de 64 bits. Eles sentem o mesmo. Se o seu processador oferecer virtualização (provavelmente), você poderá executar convidados de 64 bits em um host de 32 bits.

  3. Isso depende de necessidades muito específicas, nas quais uma ou outra solução pode ser melhor no momento - não podemos realmente dar uma recomendação para todos os aspectos. Tais coisas provavelmente também mudarão com o tempo.

Experimente, não é tão complicado, e o suporte para o Virtual Box é excelente.

Aqui está um exemplo de uso de memória das máquinas do Virtual Box:

insira a descrição da imagem aqui

Lado esquerdo é

  • Ubuntu 11.10 de 64 bits em uma CPU AMD dual core, 2 usuários logados com uso de memória de 2,3 GiB por vários aplicativos.
  • Uma RAM de 4 GiB de 32 bits do Windows XP em execução.
  • Uma segunda RAM GiB de 32 bits com Windows XP de 32 bits em execução.

A VM de 1 GiB é enviada para desligar na posição 1 , a VM de 4 GiB é enviada para desligar na posição 2 .

Aumentar ainda mais os tamanhos de memória das VMs levou ao uso extensivo de troca que tornou o sistema quase sem resposta. A execução de 2 VMs com 4 GiB cada não era permitida no meu sistema aqui (8 GiB). Uma das máquinas foi desligada do gerenciador do Virtual Box.

Takkat
fonte
Obrigado! Parece haver algumas diferenças nas respostas sobre se é possível ou não ter (por exemplo) 8 GB de RAM física e alocar simultaneamente 4 GB cada para duas VMs de 32 bits. O que você diz sobre isso?
Angelo
@ Angelo: você pode atribuir livremente qualquer quantidade de RAM a uma máquina, mas você precisa de um pouco de RAM para o host operar a máquina virtual. O Virtual Box não permite atribuir mais de 88% da RAM a uma máquina.
Takkat
obrigado, sim, eu entendo que deve haver alguma sobrecarga para a caixa virtual. O que estou perguntando é se posso obter uma grande quantidade de RAM física (por exemplo, 8 GB ou 16 GB) e alocar o máximo possível (4 GB) para cada máquina de 32 bits ao executar simultaneamente. Parece que, por outra resposta, as VMs de 32 bits estão restritas a compartilhar os primeiros 4 GB de memória física (minha pergunta pode não ter sido clara). É esse o caso?
Angelo
@ Angelo: meus testes (veja editar) indicam que - desde que você tenha RAM suficiente - você poderá executar várias máquinas de 32 bits usando 4 GiB ao mesmo tempo.
Takkat
5

Com o Virtualbox, você pode até adicionar um link à sua máquina virtual XP na área de trabalho ou entre o aplicativo para iniciá-lo rapidamente, e também pode alternar facilmente entre convidado e host.

Ao desligar o seu convidado, o host recupera imediatamente seus recursos, pois as máquinas virtuais são para o seu sistema como um aplicativo. Mesmo quando você estiver executando uma máquina virtual, se ela não usar toda a ram projetada para ela, ela será fornecida dinamicamente ao host. Exemplo: se você tiver um total de 8 GB de memória ram, defina uma quantidade de 4 GB de RAM no seu convidado, mas ele usará apenas 2 GB nos processos dele, o host poderá acessar 6 GB de RAM.

Na verdade, é muito fácil definir memória e outros recursos na sua VM, e eles serão lembrados em todas as inicialização da VM.

Não há nenhum problema em executar o convidado de 32 bits no host de 64 bits, estou fazendo isso todos os dias.

Você pode até executar o convidado de 32 bits no host de 32 bits, o que não é absolutamente um problema.

Como alternativa, se as duas VMs são de 32 bits e eu tenho 8G de RAM, o hipervisor pode provisionar cada VM com 4G de RAM quando estiverem em execução simultaneamente?

Eu realmente não entendi essa pergunta, mas se você tiver um total de 8 GB de RAM, poderá dedicar apenas metade (4 GB) às suas VMs, se quiser executar várias VMs ao mesmo tempo divida 4 GB em quantas VM você deseja executar.

Como você é o primeiro temporizador, posso sugerir que você use o VM Virtualbox, o que também é bom para usuários avançados, para que você possa usá-lo. Está disponível no repositório oficial pelo terminal:

sudo apt-get install caixa virtual

ou apenas verifique-o no Ubuntu Software Center.

Ele chega a você com uma interface muito amigável e assistentes fáceis passo a passo para fazer as coisas.

Ficarei feliz em oferecer suporte na configuração da sua VM, se necessário.

neonboy
fonte
Obrigado! Se bem entendi, você está dizendo que, se eu tenho várias VMs de 32 bits, elas estão restritas a usar uma fração dos mesmos 4 GB de memória física?
Angelo
Sim, mas apenas se você deseja iniciá-los simultaneamente. Se você planeja executá-los um de cada vez, eles podem ter toda a potência de 4 GB.
neonboy
2

Respostas: A1: Sim, o VirtualBox permitirá emular QUALQUER tipo de computador que você deseja (desde que atenda às especificações de hardware). Você pode até emular uma máquina de 64 bits em um computador de 32 bits. Portanto, sempre que você inicia uma VM, ela ocupa a quantidade de memória e o espaço VD definidos para a inicialização. Mesmo que a VM não use toda a memória fornecida, ainda há memória nula lá que a máquina host não pode usar. Portanto, se você tem um poder de processamento suficientemente forte, pode até emular OUTROS cartões de processadores, etc., embora isso não faça muito sentido na maioria das vezes e você não possa monitorá-lo com tanta facilidade. E, grosso modo, devido à eficiência da caixa virtual (além da memória), ela verifica na primeira vez em que você inicializa (e a qualquer momento após a especificação), quais drivers e itens necessários para inicializar,

A2: Sim e com muita facilidade, embora, se você tivesse duas VMs cada uma consumindo metade de sua memória, ainda precisará ter entre 50 e 100 MB de RAM para a caixa virtual e o host usarem enquanto executam em segundo plano. Então, cerca de 3,75 GB para cada ...

A3: Quando você diz hipervisores, quer dizer Host OS ou VMWare vs VirtualBox, porque a resposta direta é que o VMWare está desatualizado e o VirtualBox está estável. Portanto, você precisa decidir por falhas e erros, mas VMWare rápido ou Eficiente e estável, mas ainda ocupa um pouco de memória ao executar o VirtualBox ... Prefiro o VirtualBox, mas muitos outros com hardware não tão capaz gostam de usar o VMWare. Você decide, embora eu sugira usar o Ubuntu com o openbox, se você quiser que o mínimo de processos seja executado sempre que você fizer VMs duplas ...

TenorB
fonte
Obrigado! Parece que o virtualBox ou o OpenBox podem ser o ingresso para hardware robusto. Alguém sabe sobre o Xen?
Angelo
O Xen é bom, mas o Vbox é muito mais fácil de usar e oferece grande compatibilidade com o Windows XP.
neonboy
@ TenenB, você está se referindo a um dos produtos de código aberto do VMWare ou aos produtos comerciais (VMWare Workstation / Fusion)?
Angelo
@Angelo Open source
TenorB
@Angelo VirtualBox e VMware são dois produtos diferentes.
haziz
2

A menos que você precise executar tarefas intensivas em gráficos no convidado, a VM funcionará bem. Eu achei o Virtual Box muito fácil de configurar para o que você está tentando fazer. Você pode carregar e descarregar o convidado, conforme necessário. Você pode configurar facilmente o uso da memória e ajustar a quantidade de memória que o convidado recebe. É melhor se você usar um host de 64 bits com mais de cerca de 3 GB de memória no host. Se você estiver usando o XP como convidado, provavelmente será um convidado de 32 bits, o que funciona muito bem.

Todos os três gerenciadores de VM são ótimos. O Xen é configurado principalmente via linha de comando. É realmente poderoso, mas pode ser um pouco assustador. O VMware não é de código aberto, se isso for importante para você. O Virtual Box funciona muito bem e é simples de configurar. Certos recursos exigem um pacote complementar proprietário, mas geralmente não são obrigatórios.

A única coisa que gostaria de alertá-lo é o tamanho inicial da unidade de disco. É realmente difícil alterar o tamanho da partição virtual após a configuração inicial. Eu recomendaria torná-lo um pouco maior do que você pensa que precisa.

Em resumo, as máquinas virtuais podem ser ótimas. É definitivamente mais conveniente que a inicialização dupla.

Boa sorte!

Chris
fonte