Claims Analysis
Total Claims: 32
Claim 1
Independent Claim
159 words
In a system comprising a client connected to a server through a network, a method for sending objects from the server to the client, the method comprising: receiving a request from a client for a particular object of interest, in response to user input received at an application executing at said client; determining at runtime dependent objects for the particular object, said dependent objects comprising those objects which are required for use of the particular object by the client; determining prefetch objects for the particular object, said prefetch objects comprising those objects which are likely to be used by the client upon use of the particular object and which are determined, based at least in part, on an object-based prefetch primitive present in said application, which operates in response to said user input occurring at runtime; sending to the client said particular object requested and said determined dependent objects; and selectively sending to the client said determined prefetch objects.
Claim 2
Dependent Claim
159 words
In a system comprising a client connected to a server through a network, a method for sending objects from the server to the client, the method comprising: receiving a request from a client for a particular object of interest, in response to user input received at an application executing at said client; determining at runtime dependent objects for the particular object, said dependent objects comprising those objects which are required for use of the particular object by the client; determining prefetch objects for the particular object, said prefetch objects comprising those objects which are likely to be used by the client upon use of the particular object and which are determined, based at least in part, on an object-based prefetch primitive present in said application, which operates in response to said user input occurring at runtime; sending to the client said particular object requested and said determined dependent objects; and selectively sending to the client said determined prefetch objects.
Claim 3
Dependent Claim
44 words
The method of claim 1, wherein said particular object comprises an object which is viewed on screen by a user, and wherein said dependent objects comprise those objects which must be present at the client in order to display the particular object on screen.
Claim 4
Dependent Claim
29 words
The method of claim 2, wherein said particular object comprises a page of an interactive application program and wherein said dependent objects comprise individual objects displayed on said page.
Claim 5
Dependent Claim
36 words
The method of claim 1, wherein said particular object requested is stored on the server as a storable, said storable including a list of dependent objects and a list of prefetch objects for said particular object.
Claim 6
Dependent Claim
29 words
The method of claim 4, wherein said selectively sending step includes: determining at the client from the list of prefetch objects which prefetch objects to request from the server.
Claim 7
Dependent Claim
32 words
The method of claim 5, wherein said determining which prefetch objects to request step includes: monitoring user input at the client for determining which prefetch objects are most likely to be required.
Claim 8
Dependent Claim
25 words
The method of claim 5, wherein said determining which prefetch objects to request step includes: monitoring memory available at the client for storing additional objects.
Claim 9
Dependent Claim
31 words
The method of claim 1, wherein said prefetch objects which are sent to the client remain packaged in a form in which said prefetch objects were originally sent to the client.
Claim 10
Dependent Claim
39 words
The method of claim 8, wherein at least some of said prefetch objects comprise code objects and wherein said method further comprises: unpacking prefetch objects into a form in which said prefetch objects are directly executable by the client.
Claim 11
Dependent Claim
42 words
The method of claim 8, wherein at least some of said prefetch objects comprise code objects and wherein said method further comprises: maintaining said prefetch objects in a package form in which said prefetch objects cannot be directly executable by the client.
Claim 12
Dependent Claim
33 words
The method of claim 1, wherein said prefetch objects which are sent to the client are swapped out to a non-volatile storage device on the client when the client experiences low memory conditions.
Claim 13
Dependent Claim
25 words
The method of claim 1, wherein said request for a particular object of interest comprises a request from a user to launch an interactive application.
Claim 14
Dependent Claim
34 words
The method of claim 1, wherein said particular object comprises an executable application and wherein said method further comprises: receiving a command from the application to expressly prefetch certain objects stored on the server.
Claim 15
Dependent Claim
33 words
The method of claim 1, wherein said particular object comprises an executable application and wherein said method further comprises: receiving a command from the application for explicitly removing certain objects from client memory.
Claim 16
Dependent Claim
31 words
The method of claim 1, further comprising: experiencing a low memory condition at the client; and freeing up memory at the client by discarding from client memory least-recently used prefetch objects.
Claim 17
Dependent Claim
21 words
The method of claim 15, wherein objects which are discarded from client memory are swapped to disk storage of the client.
Claim 18
Dependent Claim
25 words
The method of claim 1, wherein said determining prefetch objects step occurs at the client after the particular object has been sent to the client.
Claim 19
Dependent Claim
164 words
In a system comprising a client connected to a server, a method for object-based caching of objects on the client, the method comprising: establishing at the client a hierarchy of objects to preferentially keep in memory, said objects being received from the server, in response to user input received at an application executing at said client; experiencing a low memory condition at the client; and in response to said low memory condition and based at least in part on an object-based prefetch primitive present in said application that operates in response to said user input occurring at runtime, performing a selected one of: if an object is not likely to be used at the client, discarding the object from memory, if an object is likely to be used at the client, swapping the object out to a mass storage device local to the client, and if an object is certain to be used at the client, maintaining the object in memory at the client.
Claim 20
Dependent Claim
164 words
In a system comprising a client connected to a server, a method for object-based caching of objects on the client, the method comprising: establishing at the client a hierarchy of objects to preferentially keep in memory, said objects being received from the server, in response to user input received at an application executing at said client; experiencing a low memory condition at the client; and in response to said low memory condition and based at least in part on an object-based prefetch primitive present in said application that operates in response to said user input occurring at runtime, performing a selected one of: if an object is not likely to be used at the client, discarding the object from memory, if an object is likely to be used at the client, swapping the object out to a mass storage device local to the client, and if an object is certain to be used at the client, maintaining the object in memory at the client.
Claim 21
Dependent Claim
27 words
The method of claim 18, wherein said hierarchy comprises objects which are required, objects which might be required, and objects which are not known to be required.
Claim 22
Dependent Claim
26 words
The method of claim 19, wherein said objects which are required comprise only those objects necessary for rendering a current view on screen to a user.
Claim 23
Dependent Claim
18 words
The method of claim 20, further comprising: providing page-level physical memory management in addition to said object-based caching.
Claim 24
Dependent Claim
36 words
The method of claim 20, wherein said server has a high latency, such that said client can access objects swapped to said mass storage device faster than the client can receive the objects from the server.
Claim 25
Dependent Claim
159 words
An interactive television system comprising: a television device having a set top box connected to a host, in response to user input received at an application executing at said client; means for requesting that a particular object be sent from the host to the set top box, said particular object including a list of dependent objects and a list of prefetch objects, said dependent objects comprising those objects required for use of said particular object, said prefetch objects comprising objects likely to be required upon use of the particular object; means for sending said particular object from the host to the set top box, said means sending dependent objects together with the requested particular objects; and means for selectively sending said prefetch objects from said host to said set top box, said means operating based at least in part on an object-based prefetch primitive present in said application that operates in response to said user input occurring at runtime.
Claim 26
Dependent Claim
159 words
An interactive television system comprising: a television device having a set top box connected to a host, in response to user input received at an application executing at said client; means for requesting that a particular object be sent from the host to the set top box, said particular object including a list of dependent objects and a list of prefetch objects, said dependent objects comprising those objects required for use of said particular object, said prefetch objects comprising objects likely to be required upon use of the particular object; means for sending said particular object from the host to the set top box, said means sending dependent objects together with the requested particular objects; and means for selectively sending said prefetch objects from said host to said set top box, said means operating based at least in part on an object-based prefetch primitive present in said application that operates in response to said user input occurring at runtime.
Claim 27
Dependent Claim
30 words
The method of claim 23, wherein said particular object comprises a storable, said storable maintaining a list of dependent objects in a list of prefetch objects for the particular object.
Claim 28
Dependent Claim
36 words
The method of claim 23, wherein said means for selectively sending said prefetch objects includes: means responsive to user input for determining which ones of said prefetch objects should be sent to the set top box.
Claim 29
Dependent Claim
41 words
The method of claim 23, wherein said means for selectively sending said prefetch objects includes: means for monitoring how a user navigates among objects and determining based on said user navigation which objects should be prefetched for the set top box.
Claim 30
Dependent Claim
22 words
The system of claim 23, wherein objects present in the system comprise program code objects, data objects, and mixed program code/data objects.
Claim 31
Dependent Claim
156 words
In a system comprising a client connected to a server through a network, a method for sending objects from the server to the client, the method comprising: receiving a request from a client for a particular object of interest, in response to user input received at an application executing at said client; determining related objects for the particular object based at least in part on an object-based prefetch primitive present in said application that operates in response to said user input occurring at runtime, said related objects comprising those objects which are required or which may be required upon use of the particular object by the client; sending to the client a name identifying said particular object requested and names identifying said determined related objects; determining, based on said names, which objects currently reside at the client; and selectively sending from the server to the client of those objects determined to not reside at the client.
Claim 32
Dependent Claim
156 words
In a system comprising a client connected to a server through a network, a method for sending objects from the server to the client, the method comprising: receiving a request from a client for a particular object of interest, in response to user input received at an application executing at said client; determining related objects for the particular object based at least in part on an object-based prefetch primitive present in said application that operates in response to said user input occurring at runtime, said related objects comprising those objects which are required or which may be required upon use of the particular object by the client; sending to the client a name identifying said particular object requested and names identifying said determined related objects; determining, based on said names, which objects currently reside at the client; and selectively sending from the server to the client of those objects determined to not reside at the client.