Pourquoi les systèmes désactivent-ils généralement la virtualisation par défaut dans les paramètres du BIOS?

81

Je n'ai pas encore vu de système dont la configuration par défaut active la virtualisation d'E / S dirigée et MMU. Cela nécessite souvent de redémarrer le système et de l'installer dans le BIOS pour l'activer si vous le souhaitez, par exemple, une prise en charge 64 bits sur vos ordinateurs virtuels.

Existe-t-il une sorte de surcharge de traitement substantielle si cela est activé et que vous n'utilisez pas la virtualisation? Si non, alors quelle est la raison pour laquelle il est désactivé par défaut?

John Feminella
la source

Réponses:

52

Il y a quelques temps, certains rootkits de validation de concept, tels que Blue Pill, pouvaient posséder un système avec VT. Après cette découverte, la plupart des fournisseurs ont commencé à expédier leurs unités avec VT désactivé par mesure de sécurité générale.

MDMarra
la source
7
+1 Les personnes utilisant VT sur un ordinateur de bureau ou un ordinateur portable constituent une exception. Cette machine étant susceptible de virii est la règle.
Chris S
J'ai soudainement des doutes sur cette nouvelle machine de développement puissante et brillante que j'ai construite et qui gère un ensemble de machines virtuelles avec la virtualisation matérielle activée. Je n'ai pas besoin de la virtualisation, mais je pense que cela me ferait gagner du temps, car je n'aurais pas à la repasser tous les deux mois. Quelle est l'envergure de ce problème?
Paperjam
2
Pratiquement inexistant (à partir de ce commentaire). Blue Pill était une preuve de concept. Je ne suis pas au courant de rien de ce genre dans la nature.
MDMarra
1
Voici l'évaluation de Microsoft sur le problème de sécurité, incluant la recommandation de désactiver VT par défaut sur les systèmes de rôles clients: msdn.microsoft.com/en-us/windows/hardware/gg463498.aspx
Jpsy
3
L'article de Microsoft n'est plus disponible sur leur site Web, mais vous pouvez le lire sur Internet Archive si vous le souhaitez.
Josh Kelley
5

La virtualisation est activée par défaut pour tous les serveurs lames que nous achetons. C'est peut-être parce que notre fournisseur a pris la décision commerciale de le faire pour économiser sur de nombreux appels d'assistance.

Il n'est pas désactivé en raison d'un problème de processeur, mais dépend à quoi sert-il. Il peut être désactivé par défaut, car l'activation de ces fonctionnalités peut affecter l'accès aux périphériques.

Sirch
la source
4
Quel accès périphérique cela peut-il avoir? Je n'ai jamais entendu ça auparavant.
MDMarra
Parlez-vous de VT-d lorsque vous avez mentionné l'accès aux périphériques?
Zoredache
Non, c'était MMU ... Je me souviens de quelqu'un qui a bafouillé à ce sujet récemment. Quelque chose à voir avec Rasberry Pi.
Sirch
2

Notez que selon cet autre fil, cela semble également avoir un impact sur les performances https://superuser.com/questions/545101/why-does-hp-recommend-that-i-keep-hardware-virtualization- off

Cela me semble pertinent, car les instructions réduites sont plus efficaces. Je n'aurais tout simplement pas pensé que le fait de changer une option du BIOS pouvait directement affecter cela.

Je ne savais pas si l'impact était important ou non, mais compte tenu de cela et de la faille potentielle de sécurité, le fait de désactiver par défaut une fonctionnalité aussi rarement utilisée me semble être un bon choix.

Balmipour
la source
2
L'angle d'efficacité de la réponse liée n'a aucun sens. Le cache d'instructions contient les instructions d'un logiciel. Si le programme n'utilise pas les instructions de virtualisation, il n'y a aucun effet sur ce cache. En outre, il n’existe aucun rapport indiquant qu’une unité d’exécution distincte gère la virtualisation, ni une partie du décodeur d’instruction pouvant être contournée; il ne devrait donc y avoir aucune différence d’efficacité.
Nimrod
1

une autre raison est que la plupart des fonctions du noyau utilisateur (comme gettimeofday) sont déplacées dans VDSO.

parfois sous virtualisation, ce raccourci ne peut pas être activé.

donc le système ne peut pas:

gagner l'exécution rapide de ces fonctions

éviter le passage coûteux de l'utilisateur au noyau et revenir

Massimo
la source
0

Outre les problèmes de sécurité soulevés dans la réponse de @MDMarra, vous devez prendre en compte deux points supplémentaires:

  1. toute fonctionnalité optionnelle activée a une faible probabilité d'avoir des interactions désagréables et inattendues avec d'autres fonctionnalités, nécessitant une validation supplémentaire. Les fournisseurs de PC détestent dépenser des ressources sur des fonctionnalités rarement utilisées, et la virtualisation côté client en fait partie.

  2. Je soupçonne fortement qu'en raison de la position n ° 1, le blob du microprogramme / BIOS du client de base Intel a désactivé le VT. Ainsi, tout fournisseur livrant un client VT doit personnaliser cette option lors de la préparation de son micrologiciel.

Cela dit, nous sommes maintenant en 2019; Je vois plus de clients avec VT activé par défaut. Les serveurs sont une toute autre affaire: non seulement j'ai toujours trouvé que le VT est activé, mais le VT-d est aussi souvent actif.

Shodanshok
la source