Virtual Disk Storage Techniques
First Claim
1. A computer-readable storage medium including instructions that upon execution by a processor cause the processor to:
- open a virtual disk file, the virtual disk file including a first unique identifier and virtual disk extent data that forms at least a part of the data in a virtual disk;
overwrite the first unique identifier in the virtual disk file with a second unique identifier in response to detecting an attempt to write information to the virtual disk file that affects how virtual disk extent data is interpreted;
determine that the second unique identifier was written to a persistent copy of the virtual disk file; and
write the information to virtual disk file in response to determining that the second unique identifier was written to the persistent copy of the virtual disk file.
2 Assignments
0 Petitions
Accused Products
Abstract
In an exemplary embodiment, a virtual disk file can be assigned an identifier and a virtual disk files that is dependent on the virtual disk file can include a copy of the identifier. In the instance that the virtual disk file is opened and data is modified that causes the contents of a virtual disk extent to change the identifier can be changed. If the virtual disk file and the dependent virtual disk file are used to instantiate a virtual disk the difference between identifiers can be detected, which is indicative of the fact that the virtual disk may be corrupted. Other techniques are described in the detailed description, claims, and figures that form a part of this document.
132 Citations
20 Claims
-
1. A computer-readable storage medium including instructions that upon execution by a processor cause the processor to:
-
open a virtual disk file, the virtual disk file including a first unique identifier and virtual disk extent data that forms at least a part of the data in a virtual disk; overwrite the first unique identifier in the virtual disk file with a second unique identifier in response to detecting an attempt to write information to the virtual disk file that affects how virtual disk extent data is interpreted; determine that the second unique identifier was written to a persistent copy of the virtual disk file; and write the information to virtual disk file in response to determining that the second unique identifier was written to the persistent copy of the virtual disk file. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A computer system, comprising:
-
a processor; and a memory, the memory in electronic communication with the processor when powered, the memory including instructions that upon execution by the processor cause the processor to; instantiate a virtual disk, the virtual disk including a group of virtual disk extents described by a first virtual disk file, the first virtual disk file including a first identifier; load information identifying virtual disk extents in the group that are completely described by the first virtual disk file into random access memory, the information associated with a copy of the first identifier; change the first identifier in the first virtual disk file to a second identifier after opening the first virtual disk file; and change the copy of the first identifier associated with the information to the second identifier in response to a determination that the information accurately reflects the state of the virtual disk extents in the group. - View Dependent Claims (8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A computer implemented method, comprising:
-
opening a parent virtual disk file, the parent virtual disk file being linked to a child virtual disk file, the parent virtual disk file including a first identifier and the child virtual disk file including a copy of the first identifier; overwriting the first identifier in the virtual disk file with second identifier in response to detecting an attempt to modify data that describes a virtual disk extent; issuing an input/output job indicative of overwriting the first identifier with the second identifier to a storage device configured to store a persistent copy of the parent virtual disk file; issuing a flush command to the storage device; and modifying the data that describes the virtual disk extent in response to receipt of a signal indicating that the storage device persisted the contents of the internal cache. - View Dependent Claims (17, 18, 19, 20)
-
Specification