Abstract: A method and system for streaming software applications to a client uses an application server having a library with the application files stored therein. A streaming manager is configured to send the application files to a client as a plurality of streamlets, each streamlet corresponding to a particular data block in a respective application file. A streaming prediction engine is provided to identify at least one streamlet which is predicted to be most appropriate to send to a given client at a particular time in accordance with a prediction model reflecting the manner in which the application files are loaded and used by the application. In the preferred implementation, the application files are preprocessed and stored as a set of compressed streamlets, each of which corresponds to a file data block having a size equal to a code page size, such as 4k, used during file reads by an operating system expected to be present on a client system.
Type:
Grant
Filed:
December 28, 2000
Date of Patent:
March 27, 2007
Assignee:
AppStream Inc.
Inventors:
Dan Eylon, Amit Ramon, Yehuda Volk, Uri Raz, Shmuel Melamed
Abstract: Computer-implemented methods of transmitting modules between a first computer and a second computer are disclosed. At the first computer, a module set is formed by selecting a sequence of modules from a collection of available modules. Each of the selected modules are associated with an application executing at the second computer. The selected modules may then be transparently streamed from the first computer to the second computer. The selection of modules is made in accordance with predetermined selection criteria and is independent of the second computer's execution environment. At the second computer, received modules may be integrated with the executing application.
Systems for transmitting modules between a first computer and a second computer are also featured. The disclosed systems include a first computer and a second computer.