US2005044310A1PendingUtilityA1

Method of managing virtual volumes in a utility storage server system

Priority: May 12, 2003Filed: Oct 5, 2004Published: Feb 24, 2005
Est. expiryMay 12, 2023(expired)· nominal 20-yr term from priority
G06F 3/0689G06F 3/0605G06F 3/0665
45
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A method is provided to allow a system administrator of a utility storage server to provision virtual volumes several times larger than the amount of physical storage within the storage server. A virtual volume is a virtual representation of multiple disks as a single large volume to a host or an application. In one embodiment, a virtual volume comprises an exception list containing the set of differences from dummy base volume consisting of all zeros. This exception list can be made up of address tables that map virtual volume pages to logical disk pages. As storage demand grows, additional storage is allocated for the address tables and the data pages from separate pools of storage. If any of the pools runs low, more logical disk regions are allocated to that pool.

Claims

exact text as granted — not AI-modified
1 . A method for writing to a virtual volume that is mapped to at least one logical disk, the virtual volume comprising an exception list, the method comprising: 
 receiving a request to write a data to the virtual volume at an address;    traversing the exception list with a path based on a portion of the address to find a pointer;    if the pointer does not exist, 
 determining if a number of available data pages in a data page pool is less than a threshold;  
 if the number of available data pages in the data page pool is not less than a threshold, 
 allocating one data page from the data page pool to form the data page;  
 writing the pointer in the exception list with the path based on the portion of the address;  
 writing the data in the data page at a location based on another portion of the address.  
 
   
   
   
       2 . The method of  claim 1 , further comprising: 
 if the pointer exists, 
 following the pointer to the data page;  
 writing the data in the data page at the location based on another portion of the address.  
   
   
   
       3 . The method of  claim 1 , further comprising: 
 if the number of available data pages in the data page pool is less than the threshold, 
 requesting additional data pages to be added to the data page pool;  
 determining if the additional data pages have been added before timing out;  
 if the additional data pages have been added before timing out, 
 allocating one data page from the data page pool to form the data page;  
 writing the pointer in the exception list with the path based on the portion of the address;  
 writing the data in the data page at the location based on another portion of the address.  
 
   
   
   
       4 . The method of  claim 3 , further comprising: 
 if the additional data pages have not been added before timing out, returning a write failure message.    
   
   
       5 . The method of  claim 1 , in response to said requesting additional data pages to be added to the data page pool, further comprising: 
 determining if said one logical disk has one storage unit (“logical disk region”) available;    if said one logic disk has one logical disk region available, 
 dividing said one logical disk region into data pages;  
 allocating the data pages to the data page pool.  
   
   
   
       6 . The method of  claim 4 , further comprising: 
 if said one logic disk does not have one logical disk region available, 
 creating a new logical disk;  
 dividing a logical disk region from the new logical disk into data pages;  
 allocating the data pages to the data page pool.

Join the waitlist — get patent alerts

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

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