IP Library Granted Patent US 7,093,090
Granted Patent B1
US 7,093,090 · App. 11/264,072 · Granted Aug 15, 2006

Method for creating a virtual data copy of a volume being restored

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,093,090
App. No.
11/264,072
Granted
Aug 15, 2006
Kind
B1
Abstract

In one embodiment of the method, first and second data volumes are created. Thereafter, a first data portion of the first data volume is overwritten with a first data portion of the second data volume. A second data portion of the first data volume is overwritten with a second data portion of the second data volume. In one embodiment, the first and second data portions of the first data volume are overwritten with the first and second data portions of the second data volume, respectively, in response to a command to restore or synchronize the data contents of the first data volume to the data contents of the second data volume. A virtual point-in-time (PIT) copy of the first data volume is created after overwriting the first data portion but before overwriting the second data portion.

Claims (62)

1. A method comprising:

(a) creating a first data volume;

(b) creating a second data volume;

(c) overwriting a first data portion of the first data volume with a first data portion of the second data volume;

(d) overwriting a second data portion of the first data volume with a second data portion of the second data volume;

(e) creating a virtual point-in-time (PIT) copy of the first data volume, wherein (e) occurs after (c) but before (d);

(m) copying a data portion from the first or second volume to memory allocated to store the virtual PIT copy;

(n) modifying the data portion copied to the memory allocated to store the virtual PIT copy.

2. The method of claim 1 wherein (n) occurs after (c) but before (d).

3. The method of claim 2 further comprising:

(o) copying another data portion from the first or second volume to memory allocated to store the virtual PIT copy;

(p) modifying the other data portion copied to the memory allocated to store the virtual PIT copy, wherein (p) occurs before (m).

4. The method of claim 1 further comprising:

(f) modifying data of a third data portion of the first data volume after (c) but before (d).

5. The method of claim 1 further comprising:

(f) modifying data of a third data portion of the first data volume, wherein (f) occurs after (c) but before (d), and wherein (e) occurs after (f).

6. The method of claim 5 further comprising:

(g) allocating memory to store data of the virtual PIT copy;

(h) copying the third data portion to the memory allocated in (g) before (f).

7. The method of claim 1 wherein (c) and (d) occur in response to generation of a command to synchronize the data contents of the first data volume to the data contents of the second data volume.

8. The method of claim 1 further comprising:

(i) modifying data of the first and second data portions of the first data volume, wherein (i) occurs before (c) and (d);

wherein the second data volume is created as virtual PIT copy of the first data volume in (b), and wherein (b) occurs before (i).

9. The method of claim 1 further comprising:

(j) generating a write-data transaction for modifying data of the second data portion of the first data volume, wherein (j) occurs after (e) but before (d);

(k) copying the first data portion of the second data volume to memory allocated to the virtual PIT copy, wherein (k) occurs after (j) but before (d).

10. A computer readable medium comprising instructions executable by a computer system, wherein the computer system implements a method in response to executing the instructions, the method comprising:

(c) overwriting a first data portion of a first data volume with a first data portion of a second data volume;

(d) overwriting a second data portion of the first data volume with a second data portion of the second data volume;

(e) creating a virtual point-in-time (PIT) copy of the first data volume, wherein (e) occurs after (c) but before (d);

(m) copying a data portion from the first or second volume to memory allocated to store the virtual PIT copy;

(n) modifying the data portion copied to the memory allocated to store the virtual PIT copy.

11. The computer readable medium of claim 10 wherein (n) occurs after (c) but before (d).

12. The computer readable medium of claim 11 wherein the method further comprises:

(o) copying another data portion from the first or second volume to memory allocated to store the virtual PIT copy;

(p) modifying the other data portion copied to the memory allocated to store the virtual PIT copy, wherein (p) occurs before (m).

13. The computer readable medium of claim 10 wherein the method further comprises:

(f) modifying data of a third data portion of the first data volume after (c) but before (d).

14. The computer readable medium of claim 10 wherein the method further comprises:

(f) modifying data of a third data portion of the first data volume, wherein (f) occurs after (c) but before (d), and wherein (e) occurs after (f).

15. The computer readable medium of claim 10 wherein the method further comprises:

(g) allocating memory to store data of the virtual PIT copy;

(h) copying the third data portion to the memory allocated in (g) before (f).

16. The computer readable medium of claim 10 wherein (c) and (d) occur in response to generation of a command to synchronize the data contents of the first data volume to the data contents of the second data volume.

17. The computer readable medium of claim 10 wherein the method further comprises:

(i) modifying data of the first and second data portions of the first data volume, wherein (i) occurs before (c) and (d);

wherein the second data volume is created as a virtual PIT copy of the first data volume in (b), and wherein (b) occurs before (i).

18. The computer readable medium of claim 10 wherein the method further comprises:

(j) generating a write-data transaction for modifying data of the second data portion of the first data volume, wherein (j) occurs after (e) but before (d);

(k) copying the first data portion of the second data volume to memory allocated to the virtual PIT copy, wherein (k) occurs after (j) but before (d).

19. A method comprising:

(a) creating a first PIT copy of a primary data volume;

(b) modifying one or more data portions of the first PIT copy or the primary data volume after creation of the first PIT copy;

(c) synchronizing the data contents of the primary data volume to the data contents of the first PIT copy, wherein (c) occurs after (b);

(d) creating a virtual PIT copy of the primary data volume, wherein (d) occurs before (c) has completed.

20. The method of claim 19 further comprising:

(e) copying a data portion from the primary volume or first PIT copy to memory allocated to store the virtual PIT copy;

(f) modifying the data portion copied to the memory allocated to store the virtual PIT copy.

21. The method of claim 20 wherein (f) occurs before (c) has completed.

22. The method of claim 21 further comprising:

(g) copying another data portion from the primary volume or first PIT copy to the memory allocated to store the virtual PIT copy;

(h) modifying the other data portion copied to the memory allocated to store the virtual PIT copy, wherein (g) occurs before (f).

Assignments (15)
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 070530/0497 Recorded Dec 1, 2025
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0730 →
TERMINATION AND RELEASE OF PATENT SECURITY AGREEMENT AT R/F 069585/0150 Recorded Dec 1, 2025
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: ARCTERA US LLC
Reel/Frame 073833/0848 →
RELEASE OF SECURITY INTEREST Recorded Dec 16, 2024
From: ACQUIOM AGENCY SERVICES LLC, AS COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC (F/K/A VERITAS US IP HOLDINGS LLC)
Reel/Frame 069712/0090 →
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 069634/0584 →
SECURITY INTEREST Recorded Dec 10, 2024
From: ARCTERA US LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 069563/0243 →
PATENT SECURITY AGREEMENT Recorded Dec 10, 2024
From: ARCTERA US LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069585/0150 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2024
From: VERITAS TECHNOLOGIES LLC
To: ARCTERA US LLC
Reel/Frame 069548/0468 →
ASSIGNMENT OF SECURITY INTEREST IN PATENT COLLATERAL Recorded Nov 25, 2024
From: BANK OF AMERICA, N.A., AS ASSIGNOR
To: ACQUIOM AGENCY SERVICES LLC, AS ASSIGNEE
Reel/Frame 069440/0084 →
TERMINATION AND RELEASE OF SECURITY IN PATENTS AT R/F 037891/0726 Recorded Nov 30, 2020
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
To: VERITAS US IP HOLDINGS, LLC
Reel/Frame 054535/0814 →
SECURITY INTEREST Recorded Aug 20, 2020
From: VERITAS TECHNOLOGIES LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
Reel/Frame 054370/0134 →
MERGER AND CHANGE OF NAME Recorded Apr 18, 2016
From: VERITAS US IP HOLDINGS LLC; VERITAS TECHNOLOGIES LLC
To: VERITAS TECHNOLOGIES LLC
Reel/Frame 038455/0752 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037891/0001 →
SECURITY INTEREST Recorded Feb 23, 2016
From: VERITAS US IP HOLDINGS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 037891/0726 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 4, 2016
From: SYMANTEC CORPORATION
To: VERITAS US IP HOLDINGS LLC
Reel/Frame 037697/0412 →
CHANGE OF NAME Recorded Oct 1, 2007
From: VERITAS OPERATING CORPORATION
To: SYMANTEC OPERATING CORPORATION
Reel/Frame 019899/0213 →