Enabling Virtual Machine support

Michael ODonnell michael.odonnell at comcast.net
Sun Sep 27 19:36:05 EDT 2009




>> So if VM support is enabled by flipping some bit(s) in some CPU
>> Control Register(s) I'd assume that a VM-capable OS could flip those
>> bits as well as any BIOS code.  I suppose it's possible that the CPU
>> might first insist on seeing a certain logic level on a certain input
>> pin before allowing VM support to be enabled, and only the BIOS
>> authors might know how to poke the appropriate values into some secret
>> I/O port to do that, but in principle the OS would still be capable of
>> doing that if only those magic locations and values were known, yes?
>
>I believe that the vmx capabilities need to be enabled at power-up.
>Once the processor gets to its "normal" state, it is too late.

Not certain I understand what you're saying but processors in this family
come out of their power-on Reset state in their simplest, least capable
mode - interrupts disabled, MMU disabled, 20bit Real Mode addressing,
etc - and each increase in capability requires a deliberate action on the
part of the system code (typically the BIOS at first, then later the OS).

Virtual Machine mode is like Virtual 8086 mode in that it's a capability
that must be explicitly enabled once the OS has rigged itself to manage
it; this as opposed to somehow being a permanent, static feature of the
platform or CPU.  And also, AFAIK, no external HW support is required
of the platform for VM capabilities to be utilized - if the OS is coded
to support it and the CPU provides it, that's all you (should!)  need.



More information about the gnhlug-discuss mailing list