US2018143878A1PendingUtilityA1

De-duplicated virtual machine image transfer

Assignee: UNIV BRITISH COLUMBIAPriority: Apr 27, 2012Filed: Jan 18, 2018Published: May 24, 2018
Est. expiryApr 27, 2032(~5.7 yrs left)· nominal 20-yr term from priority
G06F 3/067G06F 3/0662G06F 2009/45562G06F 11/1464G06F 3/065G06F 9/45558G06F 3/0613
38
PatentIndex Score
0
Cited by
0
References
0
Claims

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.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A method for copying two or more virtual machine images by one or more processors, comprising:
 identifying duplicated data present in the two or more virtual machine images;   copying the duplicated data to an interim memory as de-duplicated data;   copying blocks of the duplicated data from the interim memory to a destination memory if the blocks correspond to a particular one of the two or more virtual machine images; and   copying blocks of the duplicated data from the interim memory to a buffer if the blocks do not relate to the particular one of the two or more virtual machine images.   
     
     
         2 . The method of  claim 1 , wherein copying the duplicated data to the interim memory generates a map. 
     
     
         3 . The method of  claim 2 , wherein the map indicates which blocks of the de-duplicated data correspond to the two or more virtual machines, and wherein the blocks are sized portions of the de-duplicated data. 
     
     
         4 . The method of  claim 3 , wherein the map indicates an order of the blocks in the two or more virtual machine images. 
     
     
         5 . The method of  claim 2 , wherein the map is a data structure, wherein the data structure includes two or more files, and wherein the two or more files correspond to the one or more virtual machine images. 
     
     
         6 . The method of  claim 5 , wherein a file of the two or more files is divided into a plurality of equal sized regions. 
     
     
         7 . The method of  claim 6 , wherein a region of the plurality of equal sized regions includes a block identifier field, a region buffer number count field, a block size field, a presence field, and/or a number of regions field. 
     
     
         8 . The method of  claim 6 , wherein the region includes an indication of a number and an order of consecutive blocks in the corresponding virtual machine image. 
     
     
         9 . The method of  claim 1 , wherein the map is analyzed to determine if the blocks correspond to a particular one of the two or more virtual machine images and if the blocks do not relate to the particular one of the two or more virtual machine images. 
     
     
         10 . The method of  claim 9 , wherein the map is updated when a block is stored in the buffer by updating the presence field and/or by incrementing the region buffer number counter field. 
     
     
         11 . A system for copying two or more virtual machine images by one or more processors, the system comprising the one or more processors effective to execute a number of tasks comprising:
 identifying duplicated data present in the two or more virtual machine images;   copying the duplicated data to an interim memory as de-duplicated data;   copying blocks of the duplicated data from the interim memory to a destination memory if the blocks correspond to a particular one of the two or more virtual machine images; and   copying blocks of the duplicated data from the interim memory to a buffer if the blocks do not relate to the particular one of the two or more virtual machine images.   
     
     
         12 . The system of  claim 11 , wherein copying the duplicated data to the interim memory generates a map. 
     
     
         13 . The system of  claim 12 , wherein the map indicates which blocks of the de-duplicated data correspond to the two or more virtual machines, and wherein the blocks are sized portions of the de-duplicated data. 
     
     
         14 . The system of  claim 13 , wherein the map indicates an order of the blocks in the two or more virtual machine images. 
     
     
         15 . The system of  claim 12 , wherein the map is a data structure, wherein the data structure includes two or more files, and wherein the two or more files correspond to the one or more virtual machine images. 
     
     
         16 . The system of  claim 15 , wherein a file of the two or more files is divided into a plurality of equal sized regions. 
     
     
         17 . The system of  claim 16 , wherein a region of the plurality of equal sized regions includes a block identifier field, a region buffer number count field, a block size field, a presence field, and/or a number of regions field. 
     
     
         18 . The system of  claim 16 , wherein the region includes an indication of a number and an order of consecutive blocks in the corresponding virtual machine image. 
     
     
         19 . The system of  claim 11 , wherein the map is analyzed to determine if the blocks correspond to a particular one of the two or more virtual machine images and if the blocks do not relate to the particular one of the two or more virtual machine images. 
     
     
         20 . The system of  claim 19 , wherein the map is updated when a block is stored in the buffer by updating the presence field and/or by incrementing the region buffer number counter field. 
     
     
         21 . A method for copying two or more virtual machine images by one or more processors, comprising:
 identifying duplicated data present in the two or more virtual machine images;   copying the duplicated data to an interim memory as de-duplicated data;   copying blocks of the duplicated data from the interim memory to a destination memory if the blocks correspond to a particular one of the two or more virtual machine images; and   copying blocks of the duplicated data from the interim memory to a buffer if the blocks do not relate to the particular one of the two or more virtual machine images, wherein copying blocks of the duplicated data from the interim memory to a buffer is continued until the buffer is filled to a threshold level.   
     
     
         22 . The method of  claim 21 , wherein after the buffer is filled to the threshold level, the buffer is freed up by writing blocks of the buffer to all virtual machine images that include the blocks, until the buffer is left filled with another threshold level. 
     
     
         23 . A system for copying two or more virtual machine images by one or more processors, the system comprising the one or more processors effective to execute a number of tasks comprising:
 identifying duplicated data present in the two or more virtual machine images;   copying the duplicated data to an interim memory as de-duplicated data;   copying blocks of the duplicated data from the interim memory to a destination memory if the blocks correspond to a particular one of the two or more virtual machine images; and   copying blocks of the duplicated data from the interim memory to a buffer if the blocks do not relate to the particular one of the two or more virtual machine images, wherein copying blocks of the duplicated data from the interim memory to a buffer is continued until the buffer is filled to a threshold level.   
     
     
         24 . The system of  claim 23 , wherein after the buffer is filled to the threshold level, the buffer is freed up by writing blocks of the buffer to all virtual machine images that include the blocks, until the buffer is left filled with another threshold level.

Join the waitlist — get patent alerts

Track US2018143878A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.