Patent ID: 8627315

Claim:
A method comprising: launching a virtual machine (VM), on a host platform computer, using a virtual machine monitor (VMM) running on the host platform computer, the VM to have at least a guest operating system (OS) and a guest firmware; providing a static interface and a dynamic interface for a communication between the guest firmware and the VMM, the static interface to provide information including configuration information of the host platform computer to the guest firmware, the dynamic interface to allow the guest firmware to dynamically issue service requests to the VMM to access host platform computer services; generating a data structure, upon launching the VM, in a memory associated with the guest firmware, the data structure to act as the static interface to provide the configuration information, including processor and platform configuration information, to the guest firmware, by: defining the processor and platform configuration information for the VM; defining a virtualization policy for the VM; creating the data structure in the memory according to the virtualization policy, and the processor and platform configuration information; and passing the data structure to the guest firmware upon creation of the VM by passing a memory reference to the guest firmware within the VM to enable the guest firmware to access the configuration information and the virtualization policy within the data structure; receiving a request from the guest firmware for the host platform computer services via the dynamic interface; and in response to receiving the request for the host platform computer services, the VMM: changing a processor virtualization mode from a guest mode to a host mode without interruption of the VMM, the host mode providing an access to the host platform computer services; requesting, in the host mode, the host platform computer services from the host platform computer; and servicing the request from the guest firmware for the host platform computer services.