IP Library › Granted Patent US 10,705,867
Granted Patent B2
US 10,705,867 · App. 15/189,115 · Granted Jul 7, 2020

Hypervisor exchange with virtual machines in memory

Inventors: Mukund Gunti (Sunnyvale, CA); Vishnu Sekhar (Sunnyvale, CA); Rajesh Venkatasubramanian (San Jose, CA)
Assignee: VMware, Inc.
G06F9/45558G06F12/109G06F2009/45575G06F2009/45583G06F2212/1016G06F2212/151G06F2212/651G06F2212/656G06F2212/657
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,705,867
App. No.
15/189,115
Granted
Jul 7, 2020
Kind
B2
Abstract

A hypervisor-exchange process includes: suspending, by an “old” hypervisor, resident virtual machines; exchanging the old hypervisor for a new hypervisor, and resuming, by the new hypervisor, the resident virtual machines. The suspending can include “in-memory” suspension of the virtual machines until the virtual machines are resumed by the new hypervisor. Thus, there is no need to load the virtual machines from storage prior to the resuming. As a result, any interruption of the virtual machines is minimized. In some embodiments, the resident virtual machines are migrated onto one or more host virtual machines to reduce the number of virtual machines being suspended.

Claims (19)

1. A hypervisor-exchange process comprising:

suspending, by an old hypervisor, each virtual machine instance of a virtual-machine set of at least one virtual machine executing on the old hypervisor, at least a portion of each virtual machine instance being stored in memory controlled by the old hypervisor;

in response to the suspending, creating, by the old hypervisor, a memory map, the memory map preserving a state of each virtual machine instance of the virtual machine set of the at least one virtual machine executing on the old hypervisor;

replacing the old hypervisor with a new hypervisor while each virtual machine instance of the virtual machine set is suspended, the replacing including tearing down the old hypervisor and launching the new hypervisor so that the new hypervisor assumes control of the memory originally controlled by the old hypervisor, wherein said old hypervisor suspends said each virtual machine instance of said virtual-machine set of said at least one virtual machine in memory such that said each virtual machine instance of said virtual-machine set of said at least one virtual machine can be resumed without having to be loaded first into memory, and wherein the old hypervisor passes the memory map to the new hypervisor while completing the tearing down and after the new hypervisor is launched; and

resuming, by the new hypervisor, each virtual machine instance having at least a portion stored in the memory originally controlled by the old hypervisor, said resuming performed without requiring copying of any portion of any of said each virtual machine instance.

2. The hypervisor-exchange process of claim 1 wherein the at least portions of virtual-machine instances are not copied between the suspending and the resuming.

3. The hypervisor-exchange process of claim 1 wherein the replacing includes: the old hypervisor passing a memory map of virtual machines to memory locations to the new hypervisor using the memory map to preserve in-memory portions of the virtual machines during tear down of the old hypervisor and launching of the new hypervisor.

4. The hypervisor-exchange process of claim 1 wherein the memory map describes the suspended virtual machines and their respective memory locations.

5. The hypervisor-exchange process of claim 1 wherein the passing of the memory map occurs as the old hypervisor is being torn down and as the new hypervisor is launching.

6. A hypervisor-exchange system comprising media encoded with code that, when executed by a processor, implements a process including:

suspending, by an old hypervisor, each virtual machine instance of a virtual-machine set of at least one virtual machine executing on the old hypervisor, at least a portion of each virtual machine instance being stored in memory controlled by the old hypervisor;

in response to the suspending, creating, by the old hypervisor, a memory map, the memory map preserving a state of each virtual machine instance of the virtual machine set of the at least one virtual machine executing on the old hypervisor;

replacing the old hypervisor with a new hypervisor while each virtual machine instance of the virtual machine set is suspended, the replacing including tearing down of the old hypervisor and launching the new hypervisor so that the new hypervisor assumes control of the memory originally controlled by the old hypervisor, wherein said old hypervisor suspends said each virtual machine instance of said virtual-machine set of said at least one virtual machine in memory such that said each virtual machine instance of said virtual-machine set of said at least one virtual machine can be resumed without having to be loaded first into memory, and wherein the old hypervisor passes the memory map to the new hypervisor while completing the tearing down and after the new hypervisor is launched; and

resuming, by the new hypervisor, each virtual machine instance having at least a portion stored in the memory originally controlled by the old hypervisor, said resuming performed without requiring copying of any portion of any of said each virtual machine instance.

7. The hypervisor-exchange process of claim 1 wherein the at least portions of virtual-machine instances are not copied between the suspending and the resuming.

8. The hypervisor-exchange system of claim 6 wherein the replacing includes: the old hypervisor passing a memory map of virtual machines to memory locations to the new hypervisor; and the new hypervisor using the memory map to preserve in-memory portions of the virtual machines during tear down of the old hypervisor and launching of the new hypervisor.

9. The hypervisor-exchange system of claim 6 wherein the memory map describes the suspended virtual machines and their respective memory locations.

10. The hypervisor-exchange system of claim 6 wherein the passing of the memory map occurs as the old hypervisor is being torn down and as the new hypervisor is launching.

11. The hypervisor-exchange system of claim 6 further comprising the processor.

Assignments (2)
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 18, 2016
From: GUNTI, MUKUND; SEKHAR, VISHNU; VENKATASUBRAMANIAN, RAJESH
To: VMWARE, INC.
Reel/Frame 039182/0049 →
Continuity (1)
Related Publication 20170371691A1 · Dec 28, 2017