IP Library Granted Patent US 9,367,244
Granted Patent B2
US 9,367,244 · App. 14/557,137 · Granted Jun 14, 2016

Composing a virtual disk using application delta disk images

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,367,244
App. No.
14/557,137
Granted
Jun 14, 2016
Kind
B2
Abstract

According to a system and method for composing a virtual disk for a virtual desktop, the virtual desktop is booted from a virtual disk comprised of a base disk image and a user delta disk image that receives all disk writes to the virtual disk. Disk space is allocated on the virtual disk for a file associated with a selected application to be provided to a user of the virtual desktop. Then the virtual desktop is recomposed offline by linking the base disk image, an application delta disk image including the file associated with the selected application, and the user delta disk image. The recomposing includes modifying meta data of the application delta disk and the user delta disk so that the file associated with the selected application is mapped to the disk space previously allocated.

Claims (32)

1. A method for composing a virtual disk for a virtual machine, the virtual disk comprising a base virtual disk image, a user delta disk image, and one or more application delta disk images, the method comprising:

identifying an application delta disk image in an application store, the application delta disk image having an application stored therein, wherein the identifying of the application delta disk image comprises analyzing metadata that has been stored in the user delta disk image;

copying the identified application delta disk image to a location that is accessible to a virtual desktop of the virtual machine;

modifying a logical size of the copied application delta disk image to conform with a logical size of the base virtual disk image of the virtual machine;

linking the base virtual disk image, the application delta disk image, and the user delta disk image; and

modifying the user delta disk image so that read requests from the virtual desktop directed to the virtual disk are satisfied with data from the application delta disk image.

2. The method of claim 1 , wherein the identifying of the application delta disk image is performed in response to receiving a login request to the virtual desktop.

3. The method of claim 1 , wherein the metadata stored in the user delta disk image indicates a location of disk space allocated in the virtual disk at which the application stored in the application delta disk image is to be accessed.

4. The method of claim 3 , wherein modifying the user delta disk image comprises modifying the metadata stored in the user delta disk so that one or more files associated with the application are mapped to the disk space allocated in the virtual disk.

5. The method of claim 4 , wherein the allocating of disk space is carried out by an agent application installed on the virtual desktop that operates in conjunction with a virtual desktop management application executing outside of the virtual desktop.

6. The method of claim 1 , wherein modifying the logical size of the copied application delta disk image comprises updating metadata of the application delta disk image.

7. A system for composing a virtual disk for a virtual machine, the virtual disk comprising a base virtual disk image, a user delta disk image, and one or more application delta disk images, and the system including at least one physical processor for executing software instructions that reside in a system memory of the system, where the software instructions implement a method comprising:

identifying an application delta disk image in an application store, the application delta disk image having an application stored therein, wherein the identifying of the application delta disk image comprises analyzing metadata that has been stored in the user delta disk image;

copying the identified application delta disk image to a location that is accessible to a virtual desktop of the virtual machine;

modifying a logical size of the copied application delta disk image to conform with a logical size of the base virtual disk image of the virtual machine;

linking the base virtual disk image, the application delta disk image, and the user delta disk image; and

modifying the user delta disk image so that read requests from the virtual desktop directed to the virtual disk are satisfied with data from the application delta disk image.

8. The system of claim 7 , wherein the identifying of the application delta disk image is performed in response to receiving a login request to the virtual desktop.

9. The system of claim 7 , wherein the metadata stored in the user delta disk image indicates a location of disk space allocated in the virtual disk at which the application stored in the application delta disk image is to be accessed.

10. The system of claim 9 , wherein modifying the user delta disk image comprises modifying the metadata stored in the user delta disk so that one or more files associated with the application are mapped to the disk space allocated in the virtual disk.

11. The system of claim 10 , wherein the allocating of disk space is carried out by an agent application installed on the virtual desktop that operates in conjunction with a virtual desktop management application executing outside of the virtual desktop.

12. The system of claim 7 , wherein modifying the logical size of the copied application delta disk image comprises updating metadata of the application delta disk image.

13. A non-transitory computer-readable medium storing computer instructions that, when executed, cause a computer system to implement a method for composing a virtual disk, the method comprising:

identifying an application delta disk image in an application store, the application delta disk image having an application stored therein, wherein the identifying of the application delta disk image comprises analyzing metadata that has been stored in the user delta disk image;

copying the identified application delta disk image to a location that is accessible to a virtual desktop of the virtual machine;

modifying a logical size of the copied application delta disk image to conform with a logical size of the base virtual disk image of the virtual machine;

linking the base virtual disk image, the application delta disk image, and the user delta disk image; and

modifying the user delta disk image so that read requests from the virtual desktop directed to the virtual disk are satisfied with data from the application delta disk image.

14. The computer-readable medium of claim 13 , wherein the identifying of the application delta disk image is performed in response to receiving a login request to the virtual desktop.

15. The computer-readable medium of claim 13 , wherein the metadata stored in the user delta disk image indicates a location of disk space allocated in the virtual disk at which the application stored in the application delta disk image is to be accessed.

16. The computer-readable medium of claim 15 , wherein modifying the user delta disk image comprises modifying the metadata stored in the user delta disk so that one or more files associated with the application are mapped to the disk space allocated in the virtual disk.

17. The computer-readable medium of claim 16 , wherein the allocating of disk space is carried out by an agent application installed on the virtual desktop that operates in conjunction with a virtual desktop management application executing outside of the virtual desktop.

Assignments (3)
PATENT ASSIGNMENT Recorded Aug 5, 2024
From: VMWARE LLC
To: OMNISSA, LLC
Reel/Frame 068327/0365 →
SECURITY INTEREST Recorded Jul 3, 2024
From: OMNISSA, LLC
To: UBS AG, STAMFORD BRANCH
Reel/Frame 068118/0004 →
CHANGE OF NAME Recorded Apr 15, 2024
From: VMWARE, INC.
To: VMWARE LLC
Reel/Frame 067102/0395 →