TRANSACTIONAL VIRTUAL DISK WITH DIFFERENTIAL SNAPSHOTS
First Claim
1. A computer-implemented method for providing a virtual disk in a computer system, comprising:
- storing data for the virtual disk in a virtual disk file on the computer system;
loading a differential location data structure corresponding to a snapshot of the virtual disk into memory on the computer system;
processing input/output (I/O) operations to the virtual disk using the differential location data structure and the virtual disk file; and
periodically generating a new snapshot of the virtual disk by transactionally committing changes made to the differential location data structure by the I/O operations to the virtual disk file.
4 Assignments
0 Petitions
Accused Products
Abstract
Some embodiments provide a system that provides a virtual disk in a computer system. During operation, the system stores data for the virtual disk in a virtual disk file on the computer system. Next, the system loads a differential location data structure corresponding to a snapshot of the virtual disk into memory on the computer system and processes input/output (I/O) operations to the virtual disk using the differential location data structure and the virtual disk file. Finally, the system periodically generates a new snapshot of the virtual disk by transactionally committing changes made to the differential location data structure by the I/O operations to the virtual disk file.
100 Citations
20 Claims
-
1. A computer-implemented method for providing a virtual disk in a computer system, comprising:
-
storing data for the virtual disk in a virtual disk file on the computer system; loading a differential location data structure corresponding to a snapshot of the virtual disk into memory on the computer system; processing input/output (I/O) operations to the virtual disk using the differential location data structure and the virtual disk file; and periodically generating a new snapshot of the virtual disk by transactionally committing changes made to the differential location data structure by the I/O operations to the virtual disk file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A system for providing a virtual disk in a computer system, comprising:
-
a virtual disk file comprising data for the virtual disk; a differential location data structure corresponding to a snapshot of the virtual disk; an interceptor configured to process input/output (I/O) operations to the virtual disk using the differential location data structure and the virtual disk file; and a disk emulator configured to; load the differential location data structure into memory on the computer system; and periodically generate a new snapshot of the virtual disk by transactionally committing changes to the differential location data structure to the virtual disk file. - View Dependent Claims (12, 13, 14, 15, 16)
-
-
17. A computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for providing a virtual disk in a computer system, the method comprising:
-
storing data for the virtual disk in a virtual disk file on the computer system; loading a differential location data structure corresponding to a snapshot of the virtual disk into memory on the computer system; processing input/output (I/O) operations to the virtual disk using the differential location data structure and the virtual disk file; and periodically generating a new snapshot of the virtual disk by transactionally committing changes made to the differential location data structure by the I/O operations to the virtual disk file. - View Dependent Claims (18, 19, 20)
-
Specification