DE-DUPLICATED VIRTUAL MACHINE IMAGE TRANSFER
First Claim
1. A method for copying a first virtual machine image and a second virtual machine image from a source memory to a destination memory, the method comprising:
- copying a first block corresponding to the first virtual machine image from an interim memory to the destination memory, wherein the interim memory includes de-duplicated data that is present in the first virtual machine image and the second virtual machine image;
identifying a second block in the interim memory that corresponds to the second virtual machine image after copying the first block;
storing the second block in a buffer;
identifying a third block in the interim memory that corresponds to the first virtual machine image after storing the second block; and
copying the third block from the interim memory to the destination memory.
3 Assignments
0 Petitions
Accused Products
Abstract
Technologies are generally described for a system and method effective to copy virtual machine images from a source to a destination memory. A processor may copy a first block corresponding to a first virtual machine image from an interim memory to the destination memory. The interim memory may include de-duplicated data present in the first and the second virtual machine images. The processor may identify a second block in the interim memory that corresponds to the second virtual machine image and store the second block in a buffer. The processor may identify a third block in the interim memory that corresponds to the first virtual machine image and copy the third block from the interim memory to the destination memory.
49 Citations
30 Claims
-
1. A method for copying a first virtual machine image and a second virtual machine image from a source memory to a destination memory, the method comprising:
-
copying a first block corresponding to the first virtual machine image from an interim memory to the destination memory, wherein the interim memory includes de-duplicated data that is present in the first virtual machine image and the second virtual machine image; identifying a second block in the interim memory that corresponds to the second virtual machine image after copying the first block; storing the second block in a buffer; identifying a third block in the interim memory that corresponds to the first virtual machine image after storing the second block; and copying the third block from the interim memory to the destination memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14)
-
-
15. A system effective to copy a first virtual machine image and a second virtual machine image from a source memory to a destination memory, the system comprising:
-
an interim memory; and a processor configured to communicate with the interim memory and configured to communicate with the source memory and the destination memory, the processor effective to; copy a first block corresponding to the first virtual machine image from an interim memory to the destination memory, wherein the interim memory includes de-duplicated data present in the first and the second virtual machine images; identify a second block in the interim memory that corresponds to the second virtual machine image after performance of the copy of the first block; store the second block in a buffer; identify a third block in the interim memory that corresponds to the first virtual machine image after storage of the second block; and copy the third block from the interim memory to the destination memory. - View Dependent Claims (21, 23, 24, 25, 26)
-
-
16-20. -20. (canceled)
-
22. (canceled)
-
27. (canceled)
-
28. A method for copying a first virtual machine image and a second virtual machine image from a source memory to a destination memory, the method comprising:
-
identifying duplicated data, wherein the duplicated data is present in the first and second virtual machine images; copying the duplicated data from the source memory to an interim memory to produce de-duplicated data and an image block map; generating a file map based on the image block map, wherein the file map identifies blocks in the interim memory and virtual machine images corresponding to the blocks; copying a first block corresponding to the first virtual machine image from the interim memory to the destination memory; identifying a second block in the interim memory that corresponds to the second virtual machine image; storing the second block in a buffer; identifying a third block in the interim memory that corresponds to the first virtual machine image; and copying the third block from the interim memory to the destination memory; wherein the file map includes a first file corresponding to the first virtual machine image; a second file corresponding to the second virtual machine image; wherein the first file includes two or more regions, each region includes an identification of consecutive blocks of the de-duplicated data corresponding to the first virtual machine image; an indication of whether blocks are stored in the source memory, destination memory, and/or the buffer; and a region counter, the region counter effective to indicate a number of the second blocks that are stored in the buffer. - View Dependent Claims (29, 30)
-
Specification