Por que os sistemas geralmente desabilitam a virtualização por padrão nas configurações da BIOS?

73

Ainda estou para ver um sistema cuja configuração padrão permite a MMU e a virtualização de E / S direcionada. Geralmente, isso exige a reinicialização e a entrada no BIOS para habilitá-lo, se você quiser, por exemplo, suporte a 64 bits nas suas VMs.

Existe algum tipo de sobrecarga de processador substancial que ocorre se isso estiver ativado e você não estiver usando a virtualização? Se não, então qual é a razão para isso estar desativado por padrão?

    
por John Feminella 17.05.2012 / 15:16

4 respostas

49

Havia alguns rootkits à prova de conceito como o Blue Pill há algum tempo que poderiam ter um sistema com VT ativado. Após essa descoberta, a maioria dos fornecedores começou a enviar suas unidades com o VT desativado como precaução geral de segurança.

    
por 17.05.2012 / 15:27
5

Todas as blades que compramos têm a virtualização ativada por padrão, porque acho que nosso fornecedor tomou uma decisão comercial de fazer isso para economizar em tantas chamadas de suporte.

Ele não é desativado devido a um hit do processador, mas, dependendo do uso, o motivo pelo qual ele pode estar desativado por padrão é que a ativação desses recursos pode afetar o acesso periférico.

    
por 17.05.2012 / 15:24
2

Note que, de acordo com este outro tópico, também parece ter algum impacto nos desempenhos link

Parece relevante para mim, já que um conjunto reduzido de instruções é mais eficiente. Eu simplesmente não teria pensado que mudar uma opção de BIOS poderia afetar diretamente isso.

Eu não tenho idéia se o impacto é significativo ou não, mas considerando isso e a falha no potencial de segurança, ter um recurso tão raramente desativado por padrão parece uma boa escolha para mim.

    
por 22.07.2015 / 11:52
1

outra razão é que a maioria das funções do kernel do usuário (como gettimeofday) são movidas no VDSO.

às vezes, na virtualização, esse atalho não pode ser ativado.

para que o sistema não possa:

gain the fast execution of these functions

avoid expensive switch from userland to kernel and return

    
por 27.08.2018 / 14:36