Patentable/Patents/US-8509230
US-8509230

Software streaming system and method

PublishedAugust 13, 2013
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical 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.

Patent Claims
17 claims

Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.

Claim 1

Original Legal Text

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.

Plain English Translation

A method for streaming software downloads parts (blocks) of a software program until enough parts are available to start the program. Once that 'executable threshold' is met, the program starts running. The system continues downloading the remaining parts of the program in the background while the program is already running. This allows faster initial program startup.

Claim 2

Original Legal Text

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

Plain English Translation

The method for streaming software where parts (blocks) of a software program are downloaded until enough parts are available to start the program; the program starts running once an 'executable threshold' is met; and the system continues downloading the remaining parts of the program while the program is already running, *further includes* the step of selecting which software program to download in the first place.

Claim 3

Original Legal Text

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).

Plain English Translation

The method for streaming software where parts (blocks) of a software program are downloaded until enough parts are available to start the program; the program starts running once an 'executable threshold' is met; and the system continues downloading the remaining parts of the program while the program is already running, *further includes* receiving a 'dependency string'. This string specifies other software components (like executables or DLL files) that the streamed program needs to run correctly.

Claim 4

Original Legal Text

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

Plain English Translation

The method for streaming software where parts (blocks) of a software program are downloaded until enough parts are available to start the program; the program starts running once an 'executable threshold' is met; and the system continues downloading the remaining parts of the program while the program is already running, *further includes* generating a "start message" signal when the program begins execution. This message can be used to track program startup.

Claim 5

Original Legal Text

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

Plain English Translation

The method for streaming software where parts (blocks) of a software program are downloaded until enough parts are available to start the program; the program starts running once an 'executable threshold' is met; and the system continues downloading the remaining parts of the program while the program is already running, *further includes* decrypting some or all of the downloaded parts (blocks) of the software, likely to protect it from unauthorized use during transfer.

Claim 6

Original Legal Text

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.

Plain English translation pending...
Claim 7

Original Legal Text

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.

Plain English Translation

The method for streaming software where parts (blocks) of a software program are downloaded until enough parts are available to start the program; the program starts running once an 'executable threshold' is met; and the system continues downloading the remaining parts of the program while the program is already running, *further includes* generating an "end message" signal when the program finishes executing. This message can be used to track program completion.

Claim 8

Original Legal Text

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.

Plain English Translation

A method for streaming software sends a file system index to the client, allowing the client to create a virtual directory structure that looks like a complete installation. Then, the system streams an initial set of program files (blocks) to the client. As the program runs and needs more files, the system streams those additional parts (blocks) "on demand". This creates the illusion of a fully installed program without actually downloading everything upfront.

Claim 9

Original Legal Text

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.

Plain English Translation

The method for streaming software that sends a file system index to the client, streams an initial set of program files, and streams additional files on demand, *further includes* preparing the software for streaming by creating an index. This index contains information about registry changes, files, and directories that the software creates during its normal installation process. This allows the client to mimic a complete install.

Claim 10

Original Legal Text

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.

Plain English Translation

The method for streaming software that sends a file system index to the client, streams an initial set of program files, and streams additional files on demand, *further includes* creating an index specifically designed for a file system driver on the client. This driver uses the index to present the virtual directory structure of the application to the client's operating system.

Claim 11

Original Legal Text

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

Plain English Translation

The method for streaming software that sends a file system index to the client, streams an initial set of program files, and streams additional files on demand, *further includes* sending a dependency string to the client. This string specifies other software components (like DLLs) that the streamed program needs to run correctly on the client machine.

Claim 12

Original Legal Text

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

Plain English Translation

The method for streaming software that sends a file system index to the client, streams an initial set of program files, and streams additional files on demand, *further includes* encrypting some or all of the initial set of program files (blocks) before sending them. This protects the software from unauthorized use during transmission.

Claim 13

Original Legal Text

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.

Plain English Translation

The method for streaming software that sends a file system index to the client, streams an initial set of program files, and streams additional files on demand, *further includes* receiving a "start message" from the client when the program starts running and receiving a "stop message" from the client when the program finishes running. These messages allow the server to track the program's execution lifecycle.

Claim 14

Original Legal Text

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

Plain English Translation

The method for streaming software that sends a file system index to the client, streams an initial set of program files, and streams additional files on demand, *further includes* uploading a "client shell installation program" to the client machine. This shell program likely handles the virtual file system and on-demand downloading of software components.

Claim 15

Original Legal Text

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

Plain English Translation

The method for streaming software that sends a file system index to the client, streams an initial set of program files, and streams additional files on demand, *further includes* tracking data related to the streaming session. This might involve monitoring usage, performance metrics, or other information about how the client is using the streamed software.

Claim 16

Original Legal Text

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

Plain English Translation

The method for streaming software that sends a file system index to the client, streams an initial set of program files, and streams additional files on demand, *further includes* specifically tracking which parts (blocks) of the software are included in the initial set of files that are streamed to the client.

Claim 17

Original Legal Text

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

Plain English Translation

The method for streaming software that sends a file system index to the client, streams an initial set of program files, and streams additional files on demand, *further includes* specifically tracking the additional parts (blocks) of the software that are streamed to the client "on demand" after the program has already started running.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

July 24, 2009

Publication Date

August 13, 2013

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, FAQs, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “Software streaming system and method” (US-8509230). https://patentable.app/patents/US-8509230

© 2026 Nomic Interactive Technology LLC. Machine-readable context available at /api/llm-context/US-8509230. See llms.txt for full attribution policy.