System, method and computer program product for updating a user session in a mach-derived system environment
DCFirst Claim
1. A method for transmitting data, the method comprising:
- creating a first context on a Mach-derived system comprising at least one processor,wherein the first context incorporates an agent server;
creating a second context on the Mach-derived system,wherein the second context incorporates an agent client;
wherein the agent client and the agent server are executed on the Mach-derived system, but in separate processes;
generating, by the agent server, the data corresponding to an updated user instance,wherein the data corresponding to the updated user instance comprises user data,wherein the user data comprises at least one of;
display data, audio data, biometric data, input data, image data, output data, video data, streaming data, touch screen data, keypad data, joystick data, touchpad data, keyboard data, mouse data, metadata, smart device data, input device data, data from another device appropriate for receiving input directly or indirectly from the user, computer monitor data, speaker data, projector data, data from another device appropriate for outputting data, or output device data;
determining, by the agent server, that any portion of the user data has been updated;
transferring the data to or from the agent client via a system communication facility based on said determining,wherein said transferring comprises;
transferring at least one of;
the user data, or metadata corresponding to a shared memory comprising the any portion of the updated user data,between the agent server and the agent client,wherein at least one of the user data or the metadata is transmitted via the system communication facility,wherein the system communication facility comprises at least one of;
a socket, a file, a port, or a pipe; and
transmitting from the agent client the data over a network to a remote system for update of the user instance based on the data,wherein said transmitting comprises;
transmitting at least one of the user data, or the metadata, over the network to the remote system for update of the user instance based on the updated user data or metadata.
2 Assignments
Litigations
0 Petitions
Reexamination
Accused Products
Abstract
Methods, apparatus, systems and computer program product for updating a user session in a terminal server environment. Transfer of display data corresponding to an updated user interface can occur via a memory shared between an agent server and an agent client in a terminal server environment. Access to the shared memory can be synchronized via token passing or other operation to prevent simultaneous access to the shared memory. Token sharing and synchronized input/output can be performed using FIFOs, sockets, files, semaphores and the like, allowing communications between the agent server and agent client communications to adapt to different operating system architecture.
158 Citations
42 Claims
-
1. A method for transmitting data, the method comprising:
-
creating a first context on a Mach-derived system comprising at least one processor, wherein the first context incorporates an agent server; creating a second context on the Mach-derived system, wherein the second context incorporates an agent client; wherein the agent client and the agent server are executed on the Mach-derived system, but in separate processes; generating, by the agent server, the data corresponding to an updated user instance, wherein the data corresponding to the updated user instance comprises user data, wherein the user data comprises at least one of;
display data, audio data, biometric data, input data, image data, output data, video data, streaming data, touch screen data, keypad data, joystick data, touchpad data, keyboard data, mouse data, metadata, smart device data, input device data, data from another device appropriate for receiving input directly or indirectly from the user, computer monitor data, speaker data, projector data, data from another device appropriate for outputting data, or output device data;determining, by the agent server, that any portion of the user data has been updated; transferring the data to or from the agent client via a system communication facility based on said determining, wherein said transferring comprises; transferring at least one of;
the user data, or metadata corresponding to a shared memory comprising the any portion of the updated user data,between the agent server and the agent client, wherein at least one of the user data or the metadata is transmitted via the system communication facility, wherein the system communication facility comprises at least one of;
a socket, a file, a port, or a pipe; andtransmitting from the agent client the data over a network to a remote system for update of the user instance based on the data, wherein said transmitting comprises;
transmitting at least one of the user data, or the metadata, over the network to the remote system for update of the user instance based on the updated user data or metadata. - View Dependent Claims (2, 3, 4, 5, 6, 7, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 30, 31, 32, 35)
-
-
8. A computer network system for transmitting data, the system comprising:
-
a Mach-derived network system comprising one or more processor elements and one or more memory elements, wherein the Mach-derived network system is in communication with two or more computing devices, and wherein the one or more processor elements are programmed or adapted to; create a first context, wherein the first context incorporates an agent server; create a second context, wherein the second context incorporates an agent client; wherein the agent client and the agent server are run on the Mach-derived network system, but in separate processes; generate, by the agent server, the data corresponding to an updated user instance, wherein the data corresponding to the updated user instance comprises user data, wherein the user data comprises at least one of;
display data, audio data, biometric data, input data, image data, output data, video data, streaming data, touch screen data, keypad data, joystick data, touchpad data, keyboard data, mouse data, metadata, smart device data, input device data, data from another device appropriate for receiving input directly or indirectly from the user, computer monitor data, speaker data, projector data, data from another device appropriate for outputting data, or output device data;determine that any portion of the user data has been updated; transfer the data to or from the agent client via a system communication facility based on said determining, wherein said transfer comprises; transfer of at least one of;
the user data or metadata corresponding to a shared memory comprising the any portion of the updated user data, between the agent server and the agent client, wherein the one or more processor elements are programmed or adapted to transmit at least one of the user data or the metadata via the system communication facility,wherein the system communication facility comprises at least one of;
a socket, a file, a port, or a pipe; andtransmit the data from the agent client over the network to at least one of said two or more computing devices for update of the user instance based on the data, wherein said transmit comprises; transmit of at least one of the user data, or the metadata, over the network to the at least one of said two or more computing devices for update of the user instance based on the updated user data or metadata. - View Dependent Claims (33, 34)
-
-
25. A method for execution on a computing device comprising at least one processor and at least one memory, and wherein the computing device is adapted to be coupled to a network for communication with a Mach-derived system comprising at least one processor and at least one memory, the method comprising:
-
receiving, by the at least one processor of the computing device, an update to a user instance, wherein the update is received from the Mach-derived system; and wherein the update was previously transmitted by the Mach-derived system over the network, and wherein data was previously transferred over a system communication facility of the Mach-derived system, wherein the data transferred comprises at least one of;
user data, or metadata corresponding to a shared memory comprising any portion of the updated user data,wherein the at least one of the user data or the metadata was transmitted via the system communication facility, wherein the system communication facility comprises at least one of; a socket, a file, a port, or a pipe, wherein the data was created on the Mach-derived system, wherein the Mach-derived system comprises; a first context comprising an agent server, a second context comprising an agent client, wherein the agent client and the agent server execute on the Mach-derived system the agent client executing in a process separate from the agent server, wherein the data was generated by the agent server corresponding to the updated user instance, wherein the data corresponding to the updated user instance comprises the user data, wherein the user data comprises at least one of; display data, audio data, biometric data, input data, image data, output data, video data, streaming data, touch screen data, keypad data, joystick data, touch pad data, keyboard data, mouse data, the metadata smart device data, input device data, data from another device appropriate for receiving input directly or indirectly from the user, computer monitor data, speaker data, projector data, data from another device appropriate for outputting data, or output device data; transmitting, by the at least one processor of the computing device, input data received from at least one input device of the computing device, over the network to the Mach-derived system; and outputting, by the at least one processor of the computing device, data included in the update of the user instance based on the data received from the Mach-derived system. - View Dependent Claims (26)
-
-
27. A computing device system for communicating, over a network, with a Mach-derived system comprising at least one processor and at least one memory, comprising:
-
a computing, device comprising; at least one processor; and at least one memory, wherein said computing device is adapted to be coupled to the network for access to the Mach-derived system, wherein said at least one processor of said computing device is adapted to; receive an update to a user client instance, wherein the update is received from the Mach-derived system and wherein the update was previously transmitted by the Mach-derived system over the network, and wherein data was previously transferred over a system communication facility of the Mach-derived system, wherein the data transferred comprises at least one of; user data, or metadata corresponding to a shared memory comprising any portion of the updated user data wherein the at least one of the user data or the metadata was transmitted via the system communication facility, wherein the system communication facility comprises at least one of; a socket, a file, a port, or a pipe, wherein the data was created on the Mach-derived system, wherein the Mach-derived system comprises a context comprising an agent server, the agent server associated with an agent client, wherein the agent client and the agent server execute on the Mach-derived system, the agent client executing in a process separate from the agent server, wherein the data was generated by the agent server corresponding to the updated user instance, wherein the data corresponding to the updated user instance comprises the user data, wherein the user data comprises at least one of; display data, audio data, biometric data, input data, image data, output data, video data, streaming data, touch screen data, keypad data, joystick data, touch pad data, keyboard data, mouse data, the metadata, smart device data, input device data, data from another device appropriate for receiving input directly or indirectly from the user, computer monitor data, speaker data, projector data, data from another device appropriate for outputting data, or output device data; transmit input data received from at least one input device of said computing device, over the network to the Mach-derived system; and output data included in the update of the user instance based on the data received from the Mach-derived system. - View Dependent Claims (28, 29)
-
-
36. A method for receiving data, the method comprising:
-
creating a first context on a Mach-derived system comprising at least one processor, wherein the first context incorporates an agent server; creating a second context on the Mach-derived system, wherein the second context incorporates an agent client; wherein the agent client and the agent server are executed on the Mach-derived system, but in separate processes; receiving by the agent client the data over a network from a remote system for update of a user instance based on the data, wherein said receiving comprises; receiving at least one of user data, or metadata, over the network from the remote system for update of the user instance based on the updated user data or metadata, wherein the data corresponding to the updated user instance comprises the user data, wherein the user data comprises at least one of; display data, audio data, biometric data, input data, image data, output data, video data, streaming data, touch screen data, keypad data, joystick data, touchpad data, keyboard data, mouse data, the metadata, smart device data, input device data, data from another device appropriate for receiving input directly or indirectly from the user, computer monitor data, speaker data, projector data, data from another device appropriate for outputting data, or output device data; transferring the data by the agent client to the agent server via a system communication facility, wherein said transferring comprises; transferring at least one of;
the user data, or metadata corresponding to a shared memory comprising the any portion of the updated user data,between the agent client and the agent server, and wherein at least one of the user data or the metadata is received via the system communication facility, wherein the system communication facility comprises at least one of;
a socket, a file, a port, or a pipe; andprocessing, by the agent server, the data corresponding to the updated user instance.
-
-
37. A method for transmitting and receiving data, the method comprising:
-
creating a first context on a Mach-derived system comprising at least one processor, wherein the first context incorporates an agent server; creating a second context on the Mach-derived system, wherein the second context incorporates an agent client; wherein the agent client and the agent server are executed on the Mach-derived system, but in separate processes; receiving by the agent client the data over a network from a remote system for update of a user instance based on the data, wherein said receiving comprises; receiving at least one of user data, or metadata, over the network from the remote system for update of the user instance based on the updated user data or metadata; transferring the data to or from the agent server via a system communication facility, wherein said transferring comprises; transferring at least one of; the user data, or metadata corresponding to a shared memory comprising the any portion of the updated user data, between the agent client and the agent server, and wherein at least one of the user data or the metadata is received via the system communication facility, wherein the system communication facility comprises at least one of; a socket, a file, a port, or a pipe; processing, by the agent server, the data corresponding to the updated user instance, wherein the data corresponding to the updated user instance comprises the user data, wherein the user data comprises at least one of; display data, audio data, biometric data, input data, image data, output data, video data, streaming data, touch screen data, keypad data, joystick data, touchpad data, keyboard data, mouse data, the metadata, smart device data, input device data, data from another device appropriate for receiving input directly or indirectly from the user, computer monitor data, speaker data, projector data, data from another device appropriate for outputting data, or output device data; and determining, by the agent server, that any portion of the user data has been updated; transferring the data to the agent client via a system communication facility based on said determining, wherein said transferring comprises; transferring at least one of; the user data, or metadata corresponding to a shared memory comprising the any portion of the updated user data, between the agent server and the agent client, wherein at least one of the user data or the metadata is transmitted via the system communication facility, wherein the system communication facility comprises at least one of; a socket, a file, a port, or a pipe; and transmitting from the agent client the data over the network to the remote system for update of the user instance based on the data, wherein said transmitting comprises; transmitting at least one of the user data, or the metadata, over the network to the remote system for update of the user instance based on the updated user data or metadata.
-
-
38. A method for transmitting or receiving data, the method comprising:
-
creating a first context on a Mach-derived system comprising at least one processor, wherein the first context incorporates a first agent server; creating a second context on the Mach-derived system, wherein the second context incorporates a first agent client; creating a third context on a Mach-derived system comprising at least one processor, wherein the third context incorporates a second agent server; wherein the first agent client, the first agent server, and the second agent server are executed on the Mach-derived system, but in separate processes; processing, by the first agent server and the second agent server, the data corresponding to updated user instances, wherein the data corresponding to the updated user instances comprises user data, wherein the user data comprises at least one of; display data, audio data, biometric data, input data, image data, output data, video data, streaming data, touch screen data, keypad data, joystick data, touchpad data, keyboard data, mouse data, metadata, smart device data, input device data, data from another device appropriate for receiving input directly or indirectly from the user, computer monitor data, speaker data, projector data, data from another device appropriate for outputting data, or output device data; determining, by the first agent server and the second agent server, that any portion of user data has been updated; transferring the data from or to the first agent client via a system communication facility based on said determining, wherein said transferring comprises; transferring at least one of; the user data, or metadata corresponding to a shared memory comprising the any portion of the updated user data, between either one of the first agent server and the second agent server, and the first agent client, wherein at least one of the user data or the metadata is transferred via the system communication facility, wherein the system communication facility comprises at least one of; a socket, a file, a port, or a pipe; and transmitting or receiving, from or to the first agent client the data over a network to or from a remote system for update of the user instance based on the data, wherein said transmitting or receiving comprises; transmitting or receiving at least one of the user data, or the metadata, over the network to or from the remote system for update of the user instances based on the updated user data or metadata. - View Dependent Claims (39, 40, 41, 42)
-
Specification