VIRTUAL MACHINE BLOCK SUBSTITUTION
First Claim
1. A method of updating a virtual machine, the method comprising:
- executing a hypervisor on a host computer, the hypervisor managing execution of the virtual machine on the host computer, wherein a guest operating system is currently executing on the virtual machine, the hypervisor providing the virtual machine with block-based access to a virtual machine image, the virtual machine image comprised of blocks;
receiving a substitution block at the host computer; and
while the virtual machine is executing, replacing a target block in the virtual machine image with the substitution block.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques are described to allow substation of blocks into a virtual machine image of an executing virtual machine. A patch may be applied to a first virtual machine image. One or more blocks modified by the patch are identified and copied to a host having a virtual machine executing from a virtual machine image that is based on the first virtual machine image (prior to the patch). While the virtual machine is executing, the substitution blocks are applied (supersede) corresponding original blocks in the virtual machine image. A guest operating system in the virtual machine may either begin using an executable file in a substitution block. In addition, the guest operating system may be forced to flush from memory and cache executable code replaced by the substitution block.
75 Citations
20 Claims
-
1. A method of updating a virtual machine, the method comprising:
-
executing a hypervisor on a host computer, the hypervisor managing execution of the virtual machine on the host computer, wherein a guest operating system is currently executing on the virtual machine, the hypervisor providing the virtual machine with block-based access to a virtual machine image, the virtual machine image comprised of blocks; receiving a substitution block at the host computer; and while the virtual machine is executing, replacing a target block in the virtual machine image with the substitution block. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. One or more computer-readable storage media storing information to enable a computer to perform a process, the process comprising:
-
while a virtual machine is being executed with a first virtual machine image on the computer by a virtualization layer that manages virtual machines on the computer, receiving a second block obtained from a second virtual machine image, the first virtual machine image comprising a plurality of first blocks; and while the virtual machine continues to be executed, replacing one of the first blocks with the second block. - View Dependent Claims (9, 10, 11, 12, 13)
-
-
14. A method performed by one or more computers, the method comprising:
-
applying a patch to a first virtual machine image to generate a second virtual machine image; identifying blocks of the second virtual machine image that differ from the first virtual machine image; distributing the identified blocks to a plurality of hosts, each host having a hypervisor and one or more virtual machines managed thereby; and applying the blocks to virtual machines as they are running on the hosts. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification