IP Library Granted Patent US 9,465,518
Granted Patent B1
US 9,465,518 · App. 14/838,314 · Granted Oct 11, 2016

Method and system for creation, analysis and navigation of virtual snapshots

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 9,465,518
App. No.
14/838,314
Granted
Oct 11, 2016
Kind
B1
Abstract

A method for generation of virtual images on a computer system having a Virtual Machine (VM), including (a) generating a virtual image of the VM that includes a state of the VM's disk at a particular moment in time; wherein the virtual image is viewable via a host-side graphical representation component for viewing a history of virtual images representing states of the VM's disk at prior moments in time; (b) storing the virtual image as multiple chunks or partitions; (c) from the host side, acquiring a state of the VM's memory and adding the state of the VM's memory to the virtual image; (d) configuring the graphical representation component to display only selected virtual images based on user selection, and (e) in the graphical representation component, displaying a representation of differences between at least two of the virtual images.

Claims (50)

1. A method for generation of virtual images on a computer system having a Virtual Execution Environment (VEE), comprising:

(a) generating a virtual image of the VEE that includes a state of the VEE's disk at a particular moment in time;

wherein a history of virtual images representing states of the VEE's disk at prior moments in time is viewable via a host-side graphical representation component for viewing;

(b) storing the virtual image as multiple chunks or partitions;

(c) from the host side, acquiring contents of the VEE's memory using an Application Process Interface (API) and adding the contents of the VEE's memory to the virtual image;

(d) configuring the graphical representation component to display only selected virtual images based on user selection, and

(e) in the graphical representation component, displaying a line-by-line representation of differences between at least two of the virtual images.

2. The method of claim 1 , further comprising adding the virtual image to a virtual image tree, wherein the virtual image tree is viewable in the graphical representation component.

3. The method of claim 2 , wherein the virtual image tree is rendered to a user by the graphical representation component.

4. The method of claim 1 , further comprising selecting one virtual image as a base virtual image and a group of virtual images, wherein for each virtual image from the group differences between the virtual image and the base virtual image are indicated.

5. The method of claim 1 , wherein the graphical representation component is configurable to edit any of the following of the virtual image:

system constants;

list of running processes;

VEE processes conditions and priorities;

performance parameters;

list of OS device drivers installed/enabled-disabled/running;

file system data related to file system installed on the HDD or HDD partition; and

a part of file system, including any of

(a) transaction log or Master File Table or directories,

(b) file system transaction log,

(c) NTFS master file table,

(d) Unix superblock; and

(e) directories in NTFS, Third Extended file system (ext3), Hierarchical file system (HFS), Z file system (ZFS), Global file system (GFS), or Oracle cluster file system (OCFS).

6. The method of claim 1 , wherein the virtual image includes any of:

state of VEE configuration file;

state of VEE Compact Disk Read Only Memory (CD ROM);

state of VEE network configuration;

a state of at least some of VEE parameters associated with the HDD; and

state of VEE sound configuration.

7. The method of claim 1 , further comprising restoring properties of the virtual image in a context of another VEE.

8. The method of claim 1 , further comprising selecting another virtual image as a source of another VEE context.

9. The method of claim 8 , further comprising restoring selected properties in a VEE context running on the computing system.

10. The method of claim 1 , wherein the virtual image includes a state of a virtual CPU of the VEE at a time of the virtual image generation or earlier.

11. The method of claim 1 , wherein the graphical representation component is configurable to edit any of the following in response to user commands:

(i) virtual image properties;

(ii) VEE properties;

(iii) contents of files in a VEE's file system; and

(iv) file metadata of files in a VEE's file system.

12. The method of claim 1 , further comprising merging the virtual image and a virtual image of another VEE.

13. The method of claim 1 , further comprising merging the virtual image and another virtual image of the VEE.

14. A non-transitory computer useable medium having computer executable program logic stored thereon for executing on a processor for generation of virtual images on a computer, the computer executable program logic comprising:

(a) generating virtual images of a Virtual Execution Environment (VEE) that each includes a state of a corresponding VEE's disk at particular moment in times;

wherein the virtual images are viewable via a host-side graphical representation component for viewing a history of virtual images representing states of the VEE's disk at prior moments in time;

(b) storing the virtual images as a tree, with the virtual images corresponding to leaves of the tree;

(c) from the host side, acquiring contents of memory of the VEEs using Application Process Interfaces (APIs) and adding the contents of the memory to the corresponding virtual images;

(d) configuring the graphical representation component to display only selected virtual images based on user selection, and

(e) in the graphical representation component, displaying a representation of line-by-line differences between at least two of the virtual images from different VEEs.

15. The medium of claim 14 , wherein at least one of the VEEs is inactive.

16. The medium of claim 15 , further comprising code for scanning a storage drive of the computer to identify a virtual image of the inactive VEE, and parsing the virtual image of the inactive VEE to analyze its logical structure.

17. The medium of claim 14 , wherein the VEE is a Virtual Machine.

Assignments (4)
RELEASE OF SECURITY INTEREST Recorded Jul 18, 2019
From: UBS AG, STAMFORD BRANCH, AS ADMINISTRATIVE AND COLLATERAL AGENT
To: COREL CORPORATION; CLEARSLIDE, INC.; PARALLELS INTERNATIONAL GMBH
Reel/Frame 049787/0073 →
RELEASE OF SECURITY INTEREST RECORDED AT : REEL 047973 FRAME 0797 Recorded Jul 17, 2019
From: UBS AG, STAMFORD BRANCH
To: PARALLELS INTERNATIONAL GMBH
Reel/Frame 049773/0590 →
SECURITY INTEREST Recorded Dec 21, 2018
From: PARALLELS INTERNATIONAL GMBH
To: UBS AG, STAMFORD BRANCH
Reel/Frame 047973/0797 →
MERGER Recorded Jan 30, 2018
From: PARALLELS IP HOLDINGS GMBH
To: PARALLELS INTERNATIONAL GMBH
Reel/Frame 045193/0679 →