Method and system for establishing a robust virtualized environment
First Claim
Patent Images
1. A method comprising:
- executing firmware instructions to boot a first virtual machine monitor, the firmware instructions to execute during a boot phase and prior to a run time phase;
establishing a first virtual machine using the first virtual machine monitor;
booting a second virtual machine monitor in the first virtual machine during the run time phase;
establishing a second virtual machine using the second virtual machine monitor;
establishing a software trap to direct all management interrupts to the first virtual machine monitor, the management interrupts including at least one reliability, availability, and serviceability (RAS) event;
determining, in response to receiving a management interrupt with the first virtual machine monitor, whether the second virtual machine monitor or the first virtual machine monitor needs to handle the received management interrupt;
providing the received management interrupt to the second virtual machine monitor in response to determining that the second virtual machine monitor needs to handle the received management interrupt; and
responding to the at least one RAS event with the first virtual machine monitor in response to determining that the first virtual machine monitor needs to handle the received management interrupt by (i) performing a page migration by the first virtual machine monitor to a reserved memory region that has been sequestered from the second virtual machine monitor and (ii) translating a guest-physical memory address associated with the second virtual machine monitor to a host-physical memory address associated with the first virtual machine monitor using Extended Page Tables (EPT).
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for establishing a virtualized environment includes booting a first virtual machine monitor to establish a first virtual machine and booting a second virtual machine monitor in the first virtual machine. The first and second virtual machine monitors may be hypervisors. The method may also include directing management interrupts, such as system management interrupts and/or platform management interrupts, to the first virtual machine monitor.
43 Citations
15 Claims
-
1. A method comprising:
-
executing firmware instructions to boot a first virtual machine monitor, the firmware instructions to execute during a boot phase and prior to a run time phase; establishing a first virtual machine using the first virtual machine monitor; booting a second virtual machine monitor in the first virtual machine during the run time phase; establishing a second virtual machine using the second virtual machine monitor; establishing a software trap to direct all management interrupts to the first virtual machine monitor, the management interrupts including at least one reliability, availability, and serviceability (RAS) event; determining, in response to receiving a management interrupt with the first virtual machine monitor, whether the second virtual machine monitor or the first virtual machine monitor needs to handle the received management interrupt; providing the received management interrupt to the second virtual machine monitor in response to determining that the second virtual machine monitor needs to handle the received management interrupt; and responding to the at least one RAS event with the first virtual machine monitor in response to determining that the first virtual machine monitor needs to handle the received management interrupt by (i) performing a page migration by the first virtual machine monitor to a reserved memory region that has been sequestered from the second virtual machine monitor and (ii) translating a guest-physical memory address associated with the second virtual machine monitor to a host-physical memory address associated with the first virtual machine monitor using Extended Page Tables (EPT). - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method comprising:
-
executing firmware instructions of a platform including one or more hardware virtualization extensions to boot a platform-specific virtual machine monitor, the firmware instructions to execute during a boot phase of the platform and prior to a run time phase of the platform; establishing a first virtual machine using the platform-specific virtual machine monitor; booting a non-platform-specific virtual machine monitor in the first virtual machine during the run time phase of the platform; establishing a second virtual machine using the non-platform-specific virtual machine monitor; directing all management interrupts to the platform-specific virtual machine monitor, the management interrupts including at least one reliability, availability, and serviceability (RAS) event; determining, in response to receiving a management interrupt with the platform-specific virtual machine monitor, whether the non-platform-specific virtual machine monitor or the platform-specific virtual machine monitor needs to handle the received management interrupt; generating, in response to determining that the non-platform-specific virtual machine needs to handle the received management interrupt, a new interrupt to cause the non-platform-specific virtual machine monitor to respond to the received management interrupt; and responding to the at least one RAS event with the first virtual machine monitor in response to determining that the platform-specific virtual machine monitor needs to handle the received management interrupt by (i) performing a page migration by the platform-specific virtual machine monitor to a reserved memory region that has been sequestered from the non-platform-specific virtual machine monitor and (ii) translating a guest-physical memory address associated with the non-platform-specific virtual machine monitor to a host-physical memory address associated with the platform-specific virtual machine monitor using Extended Page Tables (EPT). - View Dependent Claims (9, 10, 11, 12)
-
-
13. A computing device comprising:
-
a processor including one or more hardware virtualization extensions; and a memory device having stored therein a plurality of instructions, which when executed by the processor, cause the processor to; boot a first hypervisor during a boot phase of the computing device and prior to a run time phase of the computing device; virtualize a second hypervisor using the first hypervisor during the run time phase of the computing device; establish a software trap to direct all management interrupts to the first hypervisor, the management interrupts including at least one reliability, availability, and serviceability (RAS) event; determine, in response to receiving a management interrupt with the first hypervisor, whether the second hypervisor or the first hypervisor needs to handle the received management interrupt; generate, in response to determining that the second hypervisor needs to handle the received management interrupt, a new interrupt to cause the second hypervisor to respond to the received management interrupt; and respond to the at least one RAS event with the first hypervisor to (i) perform a page migration to a reserved memory region that has been sequestered from the second hypervisor prior to the booting of the second hypervisor and (ii) translate a guest-physical memory address associated with the second hypervisor to a host-physical memory address associated with the first hypervisor using Extended Page Tables (EPT), in response to determining that the first hypervisor needs to handle the received management interrupt. - View Dependent Claims (14, 15)
-
Specification