Concepts and technologies are disclosed herein for managing resource access in distributed computing environments. A computing device can host a local resource such as a file or application and an application for managing or controlling resource access. The user device can communicate with a remote device that hosts a remote resource, which may be similar to the local resource. If a resource access request is detected at the user device, the user device can identify resources including a local resource and/or a remote resource that can provide functionality associated with the request. The user device can determine if the local resource, the remote resource, and/or a combination thereof is to be accessed to provide the requested access. This determination can be made before or during the access and can be based upon settings, preferences, input, network traffic, and/or other considerations determined at the user device and/or other devices.
Legal claims defining the scope of protection. Each claim is shown in both the original legal language and a plain English translation.
1. A computing device comprising: a processor; and a memory that stores computer-executable instructions that, when executed by the processor, cause the processor to perform operations comprising detecting initialization of a native application that is executed locally by the processor, and in response to detecting initialization of a native application, identifying resources that can provide functionality associated with the native application, the resources comprising a remote resource comprising a copy of the native application, which is executed by a remote device, and a local resource comprising the native application that is executed locally by the processor, determining that a setting specifies use of the remote resource to provide the functionality associated with the native application, and accessing the remote resource to provide the functionality associated with the native application.
A computing device manages application resources by first detecting when a locally-installed application starts. In response to this, the device identifies available resources for that application. These resources include the local application itself and a copy of the same application running on a remote device. The device then checks a setting that dictates whether the remote resource should be used. If the setting says to use the remote resource, the device accesses the remote application to provide the application's functionality. This enables the device to leverage remote computing power for a local application.
2. The computing device of claim 1 , wherein the computer-executable instructions, when executed by the processor, cause the processor to perform operations further comprising: obtaining network traffic information between the remote device and the computing device; determining that the computing device is to stop accessing the remote resource and to access the local resource.
Building upon the resource management system in the previous description, the computing device also monitors network traffic between itself and the remote device hosting the application. The device uses this network traffic information to decide whether to stop using the remote application and switch back to using the local application. This allows the system to dynamically adjust resource usage based on network conditions, ensuring optimal performance. For example, high latency might trigger a switch to the local resource.
3. The computing device of claim 1 , wherein the computer-executable instructions, when executed by the processor, cause the processor to perform operations further comprising: obtaining network traffic information associated with a virtual private network via which the remote device communicates with the computing device; and determining, based upon the network traffic information to stop accessing the remote resource and to access the local resource.
Expanding on the resource management system in the initial description, the computing device tracks network traffic specifically associated with a VPN connection used to communicate with the remote device. Based on this VPN network traffic, the device determines when to stop accessing the remote application and switch to the local application. This enables intelligent switching based on the performance and stability of the VPN tunnel, ensuring a reliable application experience even with varying network conditions.
4. The computing device of claim 1 , wherein the computer-executable instructions, when executed by the processor, cause the processor to perform operations further comprising: generating a user interface comprising an option to access the remote resource, a further option to access the local resource, and a text entry field to receive text that specifies a location of the remote resource.
In addition to the core resource management functionality described earlier, the computing device presents a user interface with controls for resource selection. This interface includes an option to access the remote application, another option to access the local application, and a text field where the user can manually specify the network location of the remote application. This provides the user with direct control over which resource is used and allows for configuration beyond automated settings.
5. The computing device of claim 1 , wherein the computer-executable instructions, when executed by the processor, cause the processor to perform operations further comprising: generating a user interface comprising a status of a resource access operation and an option to switch the resources accessed by the computing device.
Further enhancing the resource management system, the computing device displays a user interface that shows the current status of the application's resource access. This interface includes an option to switch between the local and remote applications. This allows the user to monitor the application's resource usage and manually intervene if necessary, such as switching to the local application if the remote connection becomes unstable.
6. A computer storage medium having computer-executable instructions stored thereon that, when executed by a processor, cause the processor to perform operations comprising: detecting a resource access request at a computing device, the resource access request comprising initialization of a native application that is executed by the computing device; and in response to detecting initialization of a native application, identifying resources that can provide functionality associated with the native application, the resources comprising a remote resource comprising a copy of the native application, which is executed by a remote device that is remote from the computing device, and a local resource comprising the native application that is executed by the computing device, wherein the local resource provides the same functionality as the remote resource, determining that a setting at the computing device specifies use of the remote resource to provide the functionality associated with the native application when the native application is accessed at the computing device, and accessing the remote resource to provide the functionality associated with the native application.
A computer storage medium contains instructions that enable a computing device to manage application resources. The device detects when a locally-installed application is launched. It then identifies available resources: the local application and a copy of the same application running on a remote device. The system uses a setting that specifies whether to use the remote application. If the setting enables the remote resource, the device accesses the remote application to provide the application's functionality. Both local and remote options offer the same application features.
7. The computer storage medium of claim 6 , wherein the computer-executable instructions, when executed by the processor, cause the processor to perform operations further comprising: obtaining network traffic information associated with a virtual private network between the processor and the remote device hosting the remote resource, and determining, based upon the network traffic information, to stop accessing the remote resource and to access the local resource.
Expanding on the resource management system described previously, the computer storage medium contains instructions that cause the computing device to monitor network traffic associated with a VPN connection between itself and the remote device. Based on this VPN network traffic information, the device determines when to stop using the remote application and switch to using the local application. This facilitates dynamic resource switching based on the quality of the VPN connection.
8. The computer storage medium of claim 6 , wherein the computer-executable instructions, when executed by the processor, cause the processor to perform operations further comprising: generating a user interface that comprises an option to access the remote resource, a further option to access the local resource, and a text entry field for text that specifies a location of the remote resource; and generating a further user interface comprising a status of a resource access operation and the option to switch resources accessed.
In addition to the core resource management functions, the computer storage medium stores instructions to generate a user interface. The interface presents an option to access the remote application, an option to access the local application, and a text field for specifying the network address of the remote application. A second user interface displays the current status of the application's resource access and an option to switch between resources. This enables direct user control and monitoring.
9. The computer storage medium of claim 8 , wherein the computer-executable instructions, when executed by the processor, cause the processor to perform operations further comprising: determining if the resource access operation is complete; and in response to determining that the resource access operation is not complete, determining if resources accessed during the resource access operation are to be switched.
Building on the previously described user interfaces for resource management, the computer storage medium also contains instructions to determine if the application's resource access operation is complete. If the operation is not complete, the system determines whether to switch between the local and remote applications. This logic allows the system to dynamically manage resources throughout the application's execution, optimizing performance and availability.
10. The computing device of claim 1 , wherein the setting specifies use of the remote resource, wherein use of the remote resource offloads operations from the computing device.
Expanding on the resource management system, the setting specifying the remote application's use is designed to offload processing from the computing device. By running the application remotely, the device reduces its own processing load. This is useful in situations where the local device has limited resources, such as older hardware or battery constraints.
11. The computing device of claim 1 , wherein the setting specifies use of the remote resource, wherein use of the remote resource offloads operations from the computing device to reduce load on the memory and the processor.
Further elaborating on the resource management, the preference to use the remote resource offloads operations from the computing device in order to reduce load on the device's memory and processor. The remote execution minimizes resource consumption on the local machine, thereby boosting performance and extending battery life when working with resource-intensive apps.
12. A method comprising: detecting, at a computing device comprising a processor that executes an application manager, a resource access request comprising initialization of a native application that is executed by the computing device; and in response to detecting initialization of a native application, identifying, by the processor, resources that can provide functionality associated with the native application, the resources comprising a remote resource comprising a copy of the native application, which is executed by a remote device that is remote from the computing device, and a local resource comprising the native application that is executed by the computing device, wherein the local resource provides the same functionality as the remote resource, determining, by the processor, that a setting at the computing device specifies use of the remote resource to provide the functionality associated with the native application when the native application is accessed at the computing device, and accessing the remote resource to provide the functionality associated with the native application.
A method implemented by a computing device running an application manager, manages application resources. The device detects when a locally-installed application starts. It then identifies available resources: the local application and a copy of the same application running on a remote device. A setting specifies whether to use the remote application. If the setting enables the remote resource, the device accesses the remote application to provide the application's functionality. Both the local and remote applications offer identical features.
13. The method of claim 12 , wherein the computing device communicates with the remote device via a virtual private network that is established over a communications network.
Building on the previously described method for resource management, the computing device communicates with the remote device through a VPN established over a communications network. This ensures a secure and reliable connection for accessing the remote application. The VPN provides a private tunnel for data transmission, protecting sensitive information and enhancing security.
14. The method of claim 13 , further comprising: obtaining network traffic information associated with the virtual private network; and determining, based upon the network traffic information, to stop accessing the remote resource and to access the local resource.
Further elaborating on the VPN connection, this method involves monitoring network traffic associated with the VPN connection. Based on this VPN network traffic, the method determines when to stop accessing the remote application and switch to the local application. This allows the system to adaptively respond to network conditions, maintaining application performance even when the VPN connection is unstable.
15. The method of claim 12 , further comprising: presenting a user interface that comprises an option to access the remote resource, a further option to access the local resource, and a text entry field for text that specifies a location of the remote resource.
Enhancing the user experience of this resource management method includes presenting a user interface with controls for resource selection. This interface includes an option to access the remote application, an option to access the local application, and a text field where the user can specify the network address of the remote application. This gives the user direct control over resource usage.
16. The method of claim 15 , further comprising: generating a further user interface comprising a status of a resource access operation and another option to switch resources accessed.
Further improving the resource management method, the system generates another user interface which displays the current status of the application's resource access and provides an option to switch between the local and remote applications. This allows the user to easily monitor the application's performance and manually intervene if necessary, ensuring a smooth and optimized experience.
17. The method of claim 12 , wherein the setting specifies use of the remote resource, wherein use of the remote resource offloads operations from the computing device to reduce load on the processor and a memory of the computing device.
Refining the resource management method, the setting specifying remote application usage aims to offload processing from the computing device. This reduces the load on the device's processor and memory. By running the application remotely, the device conserves resources, leading to improved performance and longer battery life.
Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.
October 2, 2012
May 9, 2017
Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.