Virtual storage devices
First Claim
1. A computer-implemented method of accessing data, comprising:
- a host establishing a relationship between a first storage area of a first type containing data and a second storage area of a second type containing pointers to data provided in storage areas of the first type, wherein the storage areas are provided in a storage device coupled to the host;
in response to the host initiating a write operation to write data to a particular section of the first storage area after establishing the relationship, the particular section being copied from the first storage area to a third storage area of the first type prior to writing the data to the particular section; and
a corresponding pointer of the second storage area being adjusted to point to the third storage area.
9 Assignments
0 Petitions
Accused Products
Abstract
Accessing data includes a host establishing a relationship between a first storage area of a first type containing data and a second storage area of a second type containing pointers to data provided in storage areas of the first type, where the storage areas are provided in a storage device coupled to the host. In response to the host writing data to a particular section of the first storage area after establishing the relationship, the particular section is copied from the first storage area to a third storage area of the first type prior to the write operation being executed. A corresponding pointer of the second storage area is adjusted to point to the third storage area.
18 Citations
20 Claims
-
1. A computer-implemented method of accessing data, comprising:
-
a host establishing a relationship between a first storage area of a first type containing data and a second storage area of a second type containing pointers to data provided in storage areas of the first type, wherein the storage areas are provided in a storage device coupled to the host; in response to the host initiating a write operation to write data to a particular section of the first storage area after establishing the relationship, the particular section being copied from the first storage area to a third storage area of the first type prior to writing the data to the particular section; and a corresponding pointer of the second storage area being adjusted to point to the third storage area. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer implemented method of providing a virtual storage area containing no sections of data, comprising:
-
providing first and second storage areas, each containing sections of data, wherein new data is written to the first storage area; and providing a plurality of pointers, wherein each pointer points to one of;
a section of the first storage area and a section of the second storage area, wherein the virtual storage area represents a point in time copy of the first storage area and wherein, prior to writing data to a particular section of the first storage area pointed to by a particular pointer of the virtual storage area, the particular section is copied to the second storage area and the particular pointer is made to point thereto. - View Dependent Claims (12, 13, 14)
-
-
15. A computer-implemented method of accessing data stored in connection with a virtual storage area containing no sections of data, comprising:
-
obtaining a pointer of the virtual storage area corresponding to the data, wherein the pointer points to a first storage area if no writes have been performed to a section of the first storage area containing the data and wherein the pointer points to a second storage area if at least one write has been performed to the section of the first storage area containing the data; in response to the pointer pointing to the first storage area, accessing the first storage area; and in response to the pointer pointing to the second storage area, accessing the second storage area, wherein data accessed at the second storage area is a copy of data from the first storage area that was copied in response to a first write to the section of the first storage area containing the data. - View Dependent Claims (16, 17, 18)
-
-
19. Computer software executed in a computing device that provides a virtual storage area containing no sections of data, comprising:
-
executable code that provides first and second storage areas, each containing sections of data, wherein new data is written to the first storage area; executable code that provides a plurality of pointers, wherein each pointer points to one of;
a section of the first storage area and a section of the second storage area, wherein the virtual storage area represents a point in time copy of the first storage; andexecutable code that, prior to writing data to a particular section of the first storage area pointed to by a particular pointer of the virtual storage area, executable code that copies the particular section to the second storage area and adjusts the particular pointer to point thereto.
-
-
20. Computer software executed in a computing device that accesses data stored in connection with a virtual storage area containing no sections of data, comprising:
-
executable code that obtains a pointer of the virtual storage area corresponding to the data, wherein the pointer points to a first storage area if no writes have been performed to a section of the first storage area containing the data and wherein the pointer points to a second storage area if at least one write has been performed to the section of the first storage area containing the data; executable code that, in response to the pointer pointing to the first storage area, accesses the first storage area; and executable code that, in response to the pointer pointing to the second storage area, accesses the second storage area, wherein data accessed at the second storage area is a copy of data from the first storage area that was copied in response to a first write to the section of the first storage area containing the data.
-
Specification