System And Method For Loading Assets During Remote Execution
First Claim
Patent Images
1. A system for loading assets for the local thin client of a remote application determined by an analysis of previous application executions to reduce asset induced stalls and latency, comprising:
- an executable program image designed to run a program on a local computing device;
an asset usage data base of previous executions;
a first computing device, comprising a first processor and running a first operating system, further comprising;
an application, running on the first processor, taken with modifications from said executable program image, said modifications comprising;
an extension stub for assembling the execution commands into a first data stream; and
a first transmitter for transmitting said first data stream assembled by said extension stub;
an asset loader, running on the first processor, for assembling a second data stream of predicted asset usage determined by the asset usage of previous executions in conjunction with the current asset usage of said running application; and
a second transmitter for transmitting said second data stream;
a second computing device, comprising a second processor and running a second operating system, further comprising;
a receiver for receiving the first and second data streams from said first computing device; and
a thin client, running on the second processor, for disassembling the two data streams, executing the disassembled commands and caching the loaded assets;
a communications channel for coupling said first and second transmitters of said first computing device to said receiver of said second computing device.
0 Assignments
0 Petitions
Accused Products
Abstract
This invention generally relates to remote execution of computer applications. More specifically to a system and method of managing the transmission of assets needed for remote execution. The techniques described are particularly suited to graphical programs but have a wider domain of application.
-
Citations
11 Claims
-
1. A system for loading assets for the local thin client of a remote application determined by an analysis of previous application executions to reduce asset induced stalls and latency, comprising:
-
an executable program image designed to run a program on a local computing device; an asset usage data base of previous executions; a first computing device, comprising a first processor and running a first operating system, further comprising; an application, running on the first processor, taken with modifications from said executable program image, said modifications comprising; an extension stub for assembling the execution commands into a first data stream; and a first transmitter for transmitting said first data stream assembled by said extension stub; an asset loader, running on the first processor, for assembling a second data stream of predicted asset usage determined by the asset usage of previous executions in conjunction with the current asset usage of said running application; and a second transmitter for transmitting said second data stream; a second computing device, comprising a second processor and running a second operating system, further comprising; a receiver for receiving the first and second data streams from said first computing device; and a thin client, running on the second processor, for disassembling the two data streams, executing the disassembled commands and caching the loaded assets; a communications channel for coupling said first and second transmitters of said first computing device to said receiver of said second computing device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A method for loading assets for the local thin client of a remote application determined by an analysis of previous application executions to reduce asset induced stalls and latency, comprising:
-
providing an executable program image of an application designed to run on a local computing device; supplying an asset usage data base of previous executions; modifying the executable program image of the application, to obtain a modified executable image of the application with the additional capabilities of; assembling the execution commands into a data stream; and transmitting the data stream to a separate distinct computing device; running, on a first computing device, the modified executable program image of the application; assembling, on the first computing device, by the modified executable program image of the program image, the execution commands into a first data stream; transmitting, on the first computing device, by the modified executable program image of the application, the first data stream to a second computing device; running, on the first computing device, an asset loader to generate a second data stream of predicted asset usage determined by the asset usage of previous executions in conjunction with the current asset usage of said running application; transmitting, on the first computing device, by the asset loader, the second data stream to a second computing device; receiving, on the second computer device, the first and second data streams; disassembling, on the second computing device, the received data streams into a plurality of executing commands and assets; caching, on the second computing device, the received assets; and executing, on the second computing device, the disassembled execution commands.
-
Specification