Odpowiedź Ben N jest zdecydowanie najbardziej użyteczna i jasna.
Dla tych, którzy wciąż się zastanawiają, oto pełna historia.
Wirtualizację osiąga się dzięki sprzętowej pomocy procesora. Ponieważ zwirtualizowany system operacyjny zakłóca działanie hosta, ponieważ konkurują one o te same zasoby, potrzebny jest mechanizm, aby powstrzymać gościa przed niekontrolowanym dostępem do sprzętu. Można to zrobić za pomocą oprogramowania, spowolnienia, technik lub pomocy procesora.
Wirtualizacja wspomagana sprzętowo jest realizowana za pomocą konkretnych, opcjonalnych instrukcji, o których można przeczytać w rozdziałach 23, 24, 25, 26, 27 i 28 instrukcji Intel 3B część 3 . Oprogramowanie musi najpierw sprawdzić, czy instrukcje są obsługiwane, zanim spróbuje ich użyć.
Ze względów bezpieczeństwa CPU ma specjalny rejestr, jest to MSR o nazwie IA32_FEATURE_CONTROL, który przechowuje informacje z funkcją włączania lub wyłączania.
Cytowanie
Bit 0 to bit blokady. Jeśli ten bit jest wyraźny, VMXON powoduje wyjątek dotyczący ogólnej ochrony. Jeśli ustawiony jest bit blokady, WRMSR dla tego MSR powoduje wyjątek ogólnej ochrony; MSR nie może być modyfikowany do momentu zresetowania zasilania . Systemowy system BIOS może użyć tego bitu, aby zapewnić opcję konfiguracji systemu BIOS w celu wyłączenia obsługi VMX. Aby włączyć obsługę VMX na platformie, BIOS musi ustawić bit 1, bit 2 lub oba (patrz poniżej), a także bit blokady.
Podstawową kwestią jest to, że po zablokowaniu rejestru nie można go odblokować do momentu włączenia zasilania .
Ponieważ BIOS / UEFI jest na pierwszym miejscu, może wyłączyć wirtualizację, usuwając odpowiednie bity i blokując rejestr, zanim jakikolwiek system operacyjny może temu zapobiec. Gdy funkcja wirtualizacji jest wyłączona w ten sposób, procesor zgłasza, że brakuje opcjonalnego rozszerzenia instrukcji (aw rzeczywistości jeśli wystąpi błąd, a oprogramowanie nie może korzystać z wirtualizacji sprzętowej).