Intelligent network streaming and execution system for conventionally coded applications
First Claim
1. A process for intelligent server streaming of conventionally coded streamed application programs across a computer network while concurrently executing said streamed application programs on a client in a computer environment, comprising the steps of:
- downloading an initial portion of a streamed application program on said client wherein said streamed application program comprises page segments and wherein said initial portion of said streamed application remains on said client after terminating execution of said streamed application by said client;
providing an application server;
partitioning said streamed application program into said page segments on said application server;
wherein said application server streams said page segments to said client upon said client'"'"'s request;
wherein the user starts said streamed application program as if said streamed application program were fully installed on said client;
wherein specific page segments are requested by said client'"'"'s file system during execution of said streamed application program such that said streamed application program begins execution on said client prior to downloading all of said page segments; and
storing said page segments in a cache on said client.
7 Assignments
0 Petitions
Accused Products
Abstract
An intelligent network streaming and execution system for conventionally coded applications provides a system that partitions an application program into page segments by observing the manner in which the application program is conventionally installed. A minimal portion of the application program is installed on a client system and the user launches the application in the same ways that applications on other client file systems are started. An application program server streams the page segments to the client as the application program executes on the client and the client stores the page segments in a cache. Page segments are requested by the client from the application server whenever a page fault occurs from the cache for the application program. The client prefetches page segments from the application server or the application server pushes additional page segments to the client based on the pattern of page segment requests for that particular application. The user subscribes and unsubscribes to application programs, whenever the user accesses an application program a securely encrypted access token is obtained from a license server if the user has a valid subscription to the application program. The application server begins streaming the requested page segments to the client when it receives a valid access token from the client. The client performs server load balancing across a plurality of application servers. If the client observes a non-response or slow response condition from an application server or license server, it switches to another application or license server.
414 Citations
45 Claims
-
1. A process for intelligent server streaming of conventionally coded streamed application programs across a computer network while concurrently executing said streamed application programs on a client in a computer environment, comprising the steps of:
-
downloading an initial portion of a streamed application program on said client wherein said streamed application program comprises page segments and wherein said initial portion of said streamed application remains on said client after terminating execution of said streamed application by said client; providing an application server; partitioning said streamed application program into said page segments on said application server; wherein said application server streams said page segments to said client upon said client'"'"'s request; wherein the user starts said streamed application program as if said streamed application program were fully installed on said client; wherein specific page segments are requested by said client'"'"'s file system during execution of said streamed application program such that said streamed application program begins execution on said client prior to downloading all of said page segments; and storing said page segments in a cache on said client. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. An apparatus for intelligent server streaming of conventionally coded streamed application programs across a computer network while concurrently executing said streamed application programs on a client in a computer environment, comprising:
-
a module for downloading an initial portion of a streamed application program on said client wherein said streamed application program comprises page segments and wherein said initial portion of said streamed application program remains on said client after terminating execution of said streamed application program by said client; an application server; partitioning said streamed application program into said page segments on said application server; wherein said application server streams said page segments to said client upon said client'"'"'s request; wherein the user starts said streamed application program as if said streamed application program were fully installed on said client; wherein specific page segments are requested by said client'"'"'s file system during execution of said streamed application program such that said streamed application program begins execution on said client prior to downloading all of said page segements; and a module for storing said page segments in a cache on said client. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30)
-
-
31. A program storage medium readable by a computer, tangibly embodying a program of instructions executable by the computer to perform method steps for intelligent server streaming of conventionally coded streamed application programs across a computer network while concurrently executing said streamed application programs on a client in a computer environment, comprising the steps of:
-
downloading an initial portion of a streamed application program on said client wherein said streamed application program comprises page segments and wherein said initial portion of said streamed application program remains on said client after terminating execution of said streamed application program by said client; providing an application server; partitioning said streamed application program into said page segments on said application server; wherein said application server streams said page segments to said client upon said client'"'"'s request; wherein the user starts said streamed application program as if said streamed application program were fully installed on said client; wherein specific page segments are requested by said client'"'"'s file system during execution of said streamed application program such that said streamed application program begins execution of said client prior to downloading all of said page segments; and storing said page segments in a cache on said client. - View Dependent Claims (32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45)
-
Specification