System and method for virtual parallel resource management
First Claim
Patent Images
1. A method comprising:
- receiving, by a first device of a plurality of devices involved in a collaboration session that uses a shared resource, first input from a second device of the plurality of devices;
determining, by the first device, whether the first input is an executable input, wherein an executable input is an input that requires control of the shared resource used in the collaborative session;
determining, by the first device, that a third device of the plurality of devices is currently in control of the shared resource;
starting a timer, by the first device, wherein control of the shared resource will automatically pass from the third device to the second device when a time period defined by the timer expires, wherein the timer is started in response to the first input;
executing, by the first device, second input received from the third device after the timer has been started and before the time period expires, wherein the second input represents at least one action to be taken using the shared resource;
sending, by the first device, a result obtained by executing the at least one action represented by the second input to each of the plurality of devices;
buffering, by the first device, third input received from the second device after the timer has been started and before the time period expires, wherein the third input represents at least one action to be taken using the shared resource; and
executing, by the first device, the at least one action represented by the third input after control is passed from the third device to the second device; and
sending, by the first device, a result obtained by executing the at least one action represented by the third input to each of the plurality of devices.
1 Assignment
0 Petitions
Accused Products
Abstract
An improved system and method are disclosed for providing virtual parallel access to a shared resource. In one example, the method includes receiving a request from a device to take control of the shared resource. After determining that another device is currently in control of the shared resource, a timer is started. Control of the shared resource will automatically pass from the device currently in control to the requesting device when the timer expires. Input received from the device currently in control is executed. Input received from the device that has requested control is buffered and executed once control is transferred.
300 Citations
20 Claims
-
1. A method comprising:
-
receiving, by a first device of a plurality of devices involved in a collaboration session that uses a shared resource, first input from a second device of the plurality of devices; determining, by the first device, whether the first input is an executable input, wherein an executable input is an input that requires control of the shared resource used in the collaborative session; determining, by the first device, that a third device of the plurality of devices is currently in control of the shared resource; starting a timer, by the first device, wherein control of the shared resource will automatically pass from the third device to the second device when a time period defined by the timer expires, wherein the timer is started in response to the first input; executing, by the first device, second input received from the third device after the timer has been started and before the time period expires, wherein the second input represents at least one action to be taken using the shared resource; sending, by the first device, a result obtained by executing the at least one action represented by the second input to each of the plurality of devices; buffering, by the first device, third input received from the second device after the timer has been started and before the time period expires, wherein the third input represents at least one action to be taken using the shared resource; and executing, by the first device, the at least one action represented by the third input after control is passed from the third device to the second device; and sending, by the first device, a result obtained by executing the at least one action represented by the third input to each of the plurality of devices. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A method comprising:
-
monitoring, by a first device of a plurality of devices involved in a collaboration session that uses a shared resource, a state of each of the plurality of devices as one of an owner state, a not owner state, a gaining ownership state, and a losing ownership state; receiving, by the first device, first input from a second device of the plurality of devices; determining, by the first device, whether the first input is an executable input, wherein an executable input is an input that requires control of the shared resource used in the collaborative session; identifying, by the first device, that the second device is in the not owner state and that a third device of the plurality of devices is currently in the owner state, wherein the not owner state indicates that the second device is currently not in control of the shared resource and wherein the owner state indicates that the third device is currently in control of the shared resource; starting a timer, by the first device, wherein control of the shared resource will automatically pass from the third device to the second device when a transition period defined by the timer expires, wherein the timer is started in response to the first input; modifying, by the first device, the state of the second device from the not owner state to the gaining ownership state, wherein second input received from the second device while in the gaining ownership state is buffered by the first device as the second input is received and not sent to each of the plurality of devices, wherein the second input represents at least one action to be taken using the shared resource; modifying, by the first device, the state of the third device from the owner state to the losing ownership state, wherein third input received from the third device while in the losing ownership state is executed by the first device as the third input is received and a result obtained by executing the third input is sent to each of the plurality of devices, wherein the third input represents at least one action to be taken using the shared resource; modifying, by the first device, the state of the third device from the losing ownership state to the not owner state upon expiration of the timer; modifying, by the first device, the state of the second device from the gaining ownership state to the owner state upon expiration of the timer; executing, by the first device, the second input once the second device is in the owner state; and sending, by the first device, a result obtained by executing the second input to each of the plurality of devices. - View Dependent Claims (17, 18, 19)
-
-
20. A device comprising:
-
a network interface; a processor coupled to the network interface; and a memory coupled to the processor and configured to store a plurality of instructions executable by the processor, the instructions including instructions for; monitoring a state of each of a plurality of devices as one of an owner state, a not owner state, a gaining ownership state, and a losing ownership state, wherein the plurality of devices are involved in a collaboration session that uses a shared resource being shared by the device, receiving first input from a second device of the plurality of devices via the network interface; determining whether the first input is an executable input, wherein an executable input is an input that requires control of the shared resource used in the collaborative session; identifying that the second device is in the not owner state and that a third device of the plurality of devices is currently in the owner state, wherein the not owner state indicates that the second device is currently not in control of the shared resource and wherein the owner state indicates that the third device is currently in control of the shared resource; starting a timer, wherein control of the shared resource will automatically pass from the third device to the second device when a transition period defined by the timer expires, wherein the timer is started in response to the first input; modifying the state of the second device from the not owner state to the gaining ownership state, wherein second input received via the network interface from the second device while in the gaining ownership state is buffered by the first device as the second input is received and not sent to each of the plurality of devices, wherein the second input represents at least one action to be taken using the shared resource; modifying the state of the third device from the owner state to the losing ownership state, wherein third input received via the network interface from the third device while in the losing ownership state is executed by the first device as the third input is received and a result obtained by executing the third input is sent to each of the plurality of devices, wherein the third input represents at least one action to be taken using the shared resource; modifying the state of the third device from the losing ownership state to the not owner state upon expiration of the timer; modifying the state of the second device from the gaining ownership state to the owner state upon expiration of the timer; executing the second input once the second device is in the owner state; and sending a result obtained by executing the second input to each of the plurality of devices.
-
Specification