IP Library Granted Patent US 8,073,926
Granted Patent B2
US 8,073,926 · App. 11/031,133 · Granted Dec 6, 2011

Virtual machine image server

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 8,073,926
App. No.
11/031,133
Granted
Dec 6, 2011
Kind
B2
Abstract

Virtual machine image files are stored in a virtual machine storage by a virtual machine image file server. Users at virtual machine clients connect to the virtual machine image file server and are presented with a list of the available virtual machine image files in a virtual machine image store. Users of the virtual machine clients are able to select the desired virtual machine image, and begin executing in the selected virtual machine environment as soon as the selected virtual machine image file begins downloading to the client computer. When a virtual machine image file is selected for storage it is divided into several segments. Each segment is compared with segments of previously stored virtual machine image files already in storage. For example, only non-duplicate segments are stored.

Claims (36)

1. A method for downloading a virtual machine image file to a virtual machine client, comprising:

selecting by the virtual machine client the virtual machine image file, wherein the selecting comprises selecting a first parameter identifying an operating system, and a second parameter identifying an application environment;

receiving the selected virtual machine image file at the virtual machine client from a virtual machine image file server; and

executing the virtual machine image file at the virtual machine client before the virtual machine image file has been completely received by the virtual machine client, wherein the executing comprises:

receiving a request to access a sector of the virtual machine image file by the virtual machine client;

determining if the requested sector has already been received by the virtual machine client;

accessing the requested sector when it is determined that the requested sector has previously been received by the virtual machine client; and

sending a message to the virtual machine image file server to prioritize the requested sector when it is determined that the requested sector has not previously been received by the virtual machine client, and then accessing the requested sector when the requested sector is later received by the virtual machine client.

2. The method of claim 1 , wherein retrieving the selected virtual image comprises the virtual machine image file server generating a virtual machine image file using the first and second parameters.

3. The method of claim 2 , wherein the virtual machine image file is generated using a stored virtual machine image file configuration template corresponding to the first and second parameters.

4. The method of claim 1 , wherein the virtual machine image file is selected from a plurality of virtual machine image files stored on the virtual machine image file server.

5. The method of claim 4 , wherein selecting a virtual machine image file at the virtual machine client comprises:

receiving meta-information associated with the plurality of virtual machine image files; and

selecting the virtual machine image file using the received meta-information.

6. The method of claim 1 , wherein the sectors are received using remote differential compression.

7. A virtual machine client comprising:

a processor operative to execute computer-executable instructions; and

memory having stored therein computer-executable instructions for performing steps comprising:

select a virtual machine image file for transfer from a virtual machine image file server, and

execute the virtual machine image file before the virtual machine image file has completely transferred to the virtual machine client from the virtual machine image file server, wherein the executing comprises:

receiving a request to access a sector of the virtual machine image file by the virtual machine client;

determining if the requested sector has already been transferred to the virtual machine client;

accessing the requested sector when it is determined that the requested sector has previously been transferred to the virtual machine client; and

sending a message to the virtual machine image file server to prioritize the requested sector when it is determined that the requested sector has not previously been transferred to the virtual machine client, and then accessing the requested sector when the requested sector is later transferred to the virtual machine client.

8. The virtual machine client of claim 7 , wherein the virtual machine image file is transferred using remote differential compression.

9. The virtual machine client of claim 7 , wherein the virtual machine client is adapted to select a first parameter identifying an operating system, and a second parameter identifying an application environment.

10. The virtual machine client of claim 7 , wherein the virtual machine image file is selected by the virtual machine client from a plurality of virtual machine image files stored on the virtual machine image server.

11. The virtual machine client of claim 7 , wherein the virtual machine image file is selected by the virtual machine client at startup.

12. The virtual machine client of claim 7 , wherein the virtual machine client is adapted to detect virtual machine image file servers on a network.

13. A computer-readable storage medium with computer-executable instructions stored thereon for performing the method of:

select a virtual machine image file for transfer from a virtual machine image file server, and

execute the virtual machine image file before the virtual machine image file has completely transferred to a virtual machine client from the virtual machine image file server, wherein the executing comprises:

receiving a request to access a sector of the virtual machine image file by the virtual machine client;

determining if the requested sector has already been transferred to the virtual machine client;

accessing the requested sector when it is determined that the requested sector has previously been transferred to the virtual machine client; and

sending a message to the virtual machine image file server to prioritize the requested sector when it is determined that the requested sector has not previously been transferred to the virtual machine client, and then accessing the requested sector when the requested sector is later transferred to the virtual machine client.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2014
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034543/0001 →
CORRECTIVE ASSIGNMENT TO CORRECT THE ASSIGNEE'S STREET ADDRESS SHOULD READ: ONE MICROSOFT WAY PREVIOUSLY RECORDED ON REEL 016581 FRAME 0851. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT OF ASSIGNOR'S INTEREST. Recorded Oct 7, 2005
From: TRAUT, ERIC; TEODOSIU, DAN
To: MICROSOFT CORPORATION
Reel/Frame 016628/0317 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 23, 2005
From: TRAUT, ERIC; TEODOSIU, DAN
To: MICROSOFT CORPORATION
Reel/Frame 016581/0851 →