Common key frame caching for a remote user interface
First Claim
1. A method for managing a cache, comprising:
- providing a plurality of common key frames of graphical information to a client by a server;
providing current graphical frame data for a current frame to a client by a server over a network, the current graphical frame data identifies a first of the common key frames to be used to render the current frame;
receiving a command from the client at the server after providing the current graphical frame data;
identifying a new frame by the server to be rendered at the client based on the command;
selecting one of the plurality of common key frames by the server for use in rendering the new frame;
determining a set of difference data associated with the difference between the new frame and the selected common key frame; and
transmitting an identifier for the selected common key frame and the set of difference data to the client by the server.
2 Assignments
0 Petitions
Accused Products
Abstract
Common key frames are provided to a client during initialization to provide more efficient remoting of user interface graphical information. By storing the common key frames at the client, the common key frames may be loaded quicker and more efficiently at the client without having to resend graphical information for each common key frame each time a common key frame is used to provide a new frame. Differences between a selected common key frame and the new frame are encoded as delta commands. A payload containing a common key frame command, which identifies a common key frame at the client, and delta commands which encode differences between the selected common key frame and new frame is sent to the client. The client receives the payload, sets a cached common key frame as the current frame, applies the delta commands to the selected common key frame, and renders the new frame.
-
Citations
20 Claims
-
1. A method for managing a cache, comprising:
-
providing a plurality of common key frames of graphical information to a client by a server; providing current graphical frame data for a current frame to a client by a server over a network, the current graphical frame data identifies a first of the common key frames to be used to render the current frame; receiving a command from the client at the server after providing the current graphical frame data; identifying a new frame by the server to be rendered at the client based on the command; selecting one of the plurality of common key frames by the server for use in rendering the new frame; determining a set of difference data associated with the difference between the new frame and the selected common key frame; and transmitting an identifier for the selected common key frame and the set of difference data to the client by the server. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. One or more processor readable storage devices having processor readable code embodied on said processor readable storage devices, said processor readable code for programming one or more processors to perform a method comprising:
-
receiving a set of common key frames containing graphical information by a client from a server; storing each common key frame at a common key frame cache slot at the client; rendering a first frame at the client by using a first of the common key frames; sending a command from the client to the server after rendering the first frame; receiving a set of instructions by the client from the server in response to the command, the set of instructions including a common key frame instruction and difference data instructions, the difference data instructions are based on differences between a new frame to be presented at the client and a second of the common key frames stored at the client; setting a first pointer to a selected common key frame cache slot at the client in response to executing the common key frame instruction; modifying graphical frame data associated with the common key frame slot in response to executing the difference data instructions; and presenting a frame associated with the modified graphical frame data through a display device by the client. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A method for managing a cache, comprising:
-
receiving memory size information from a client by a server; providing two or more common key frames to a client by a server over a network during initialization of the client, the two or more common key frames are a corresponding two or more backgrounds to be cached at the client; identifying a first of the two or more common key frames to be rendered at the client for an initial frame; identifying a new frame by the server to be rendered at the client; identifying a second of the two or more common key frames to be used to generate the new frame; generating a common key frame instruction to select the second common key frame at the client; encoding a set of difference data instructions associated with the difference between the new frame and the second common key frame; and transmitting a payload that includes the common key frame instruction and the set of difference data instructions to the client by the server. - View Dependent Claims (19, 20)
-
Specification