IP Library Granted Patent US 8,509,230
Granted Patent B2
US 8,509,230 · App. 12/509,210 · Granted Aug 13, 2013

Software streaming system and method

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,509,230
App. No.
12/509,210
Granted
Aug 13, 2013
Kind
B2
Abstract

A method for streaming software may include downloading blocks associated with a software title until an executable threshold is reached, initiating execution of the software title, and continuing to download blocks of the software title while the software title is executed. Another method for streaming software may include sending to a client data sufficient for the client to build a virtual directory structure for use in executing a software title, streaming a subset of blocks associated with the software title to the client, and streaming additional blocks associated with the software title to the client on demand. A system for streaming software may include a server computer and a client computer. The server computer may include a program database and a streaming engine. In operation the streaming engine may stream an executable streaming application from the program database to the client.

Claims (30)

1. A method comprising:

downloading, using a processor, blocks of a software title until a number of the blocks of the software title equals an executable threshold;

initiating execution of the software title when the number of the blocks equals the executable threshold;

continuing to download blocks of the software title while the software title is executed.

2. The method of claim 1 , further comprising selecting the software title for download.

3. The method of claim 1 , further comprising receiving a dependency string associated with the software title, wherein the dependency string includes software selected from the group consisting of executables and dynamic link libraries (DLLs).

4. The method of claim 1 , further comprising generating a start message generally contemporaneously with said initiating execution of the software title.

5. The method of claim 1 , further comprising decrypting one or more of the download blocks.

6. The method of claim 1 , further comprising:

requesting data, associated with the software title, that is available at a remote location;

suspending execution of the software title; downloading blocks associated with the requested data;

resuming execution of the software title with the requested data.

7. The method of claim 1 , further comprising:

completing execution of the software title;

generating an end message generally contemporaneously with said completing execution of the software title.

8. A method comprising:

sending to a client an index for the client to build a virtual directory structure to facilitate executing a software title;

streaming, using a processor, a subset of blocks associated with the software title to the client;

streaming additional blocks associated with the software title to the client on demand.

9. The method of claim 8 further comprising preparing the software title for streaming, including creating an index containing information about registry changes, files, and directories created.

10. The method of claim 8 further comprising creating an index for use by a client-side file system driver to present the virtual directory structure to the client.

11. The method of claim 8 further comprising sending a dependency string associated with the software title to the client.

12. The method of claim 8 , further comprising encrypting one or more of the subset of blocks.

13. The method of claim 8 further comprising:

receiving from the client a start message associated with a start of execution of the software title;

receiving from the client a stop message associated with an end to execution of the software title.

14. The method of claim 8 further comprising uploading a client shell installation program to the client.

15. The method of claim 8 further comprising tracking data associated with a session of streaming execution of the software title by the client.

16. The method of claim 8 further comprising tracking the subset of blocks associated with the software title.

17. The method of claim 8 , further comprising tracking the additional blocks associated with the software title.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 26, 2012
From: STREAMTHEORY, INC.
To: NUMECENT HOLDINGS, INC.
Reel/Frame 029526/0310 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 13, 2011
From: GAMEWAVE, INC.
To: STREAMTHEORY, INC.
Reel/Frame 026431/0517 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2011
From: VINSON, JEFFREY; WESTERBERG, STEIG; DEVRIES, JEFFREY
To: GAMEWAVE, INC.
Reel/Frame 026420/0198 →