Resource manager architecture utilizing a policy manager
First Claim
1. A method, comprising:
- receiving requests from multiple consumers that seek to allocate resources to perform one or more computing-based tasks, the multiple consumers creating activity data structures that are associated with the one or more computing-based tasks to be performed by the multiple consumers;
prioritizing the activity data structures with a policy manager, the prioritizing according to one of multiple policies that defines which of the activity data structures are to be allocated the resources; and
allocating the resources to the activity data structures with a resource manager, the allocating based on a priority ordering of the activity data structures by the policy manager;
wherein the policy manager including a kernel component that resides at a kernel level, a user component that resides at a user level, and an interaction buffer facilitating communication between the kernel component and the user component;
wherein the user component including an activity list of the activity data structures, a policies component maintaining the policies which are implemented to prioritize the activity data structures, and a dispatch engine maintaining the activity list and dispatching the activity list to the policies component.
1 Assignment
0 Petitions
Accused Products
Abstract
Resource management architectures implemented in computer systems to manage resources are described. In one embodiment, a general architecture includes a resource manager and multiple resource providers that support one or more resource consumers such as a system component or application. Each provider is associated with a resource and acts as the manager for the resource when interfacing with the resource manager. The resource manager arbitrates access to the resources provided by the resource providers on behalf of the consumers. A policy manager sets various policies that are used by the resource manager to allocate resources. One policy is a priority-based policy that distinguishes among which applications and/or users have priority over others to use the resources. A resource consumer creates an “activity” at the resource manager and builds one or more “configurations” that describe various sets of preferred resources required to perform the activity. Each resource consumer can specify one or more configurations for each activity. If multiple configurations are specified, the resource consumer can rank them according to preference. This allows the resource consumers to be dynamically changed from one configuration to another as operating conditions change.
57 Citations
20 Claims
-
1. A method, comprising:
-
receiving requests from multiple consumers that seek to allocate resources to perform one or more computing-based tasks, the multiple consumers creating activity data structures that are associated with the one or more computing-based tasks to be performed by the multiple consumers; prioritizing the activity data structures with a policy manager, the prioritizing according to one of multiple policies that defines which of the activity data structures are to be allocated the resources; and allocating the resources to the activity data structures with a resource manager, the allocating based on a priority ordering of the activity data structures by the policy manager; wherein the policy manager including a kernel component that resides at a kernel level, a user component that resides at a user level, and an interaction buffer facilitating communication between the kernel component and the user component; wherein the user component including an activity list of the activity data structures, a policies component maintaining the policies which are implemented to prioritize the activity data structures, and a dispatch engine maintaining the activity list and dispatching the activity list to the policies component. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. One or more computer readable media comprising computer executable instructions that, when executed, direct a policy management architecture to:
-
receive requests from multiple consumers that seek to allocate resources to perform one or more computing-based tasks, the multiple consumers creating activity data structures that are associated with the one or more computing-based tasks to be performed by the multiple consumers; prioritize the activity data structures with a policy manager according to one of multiple policies that defines which of the activity data structures are to be allocated the resources; allocate the resources to the activity data structures with a resource manager based on a priority ordering of the activity data structures by the policy manager; wherein the policy manager including a kernel component that resides at a kernel level, a user component that resides at a user level, and an interaction buffer that facilitates communication between the kernel component and the user component; and wherein the user component including an activity list of the activity data structures, a policies component that maintains the policies which are implemented to prioritize the activity data structures, and a dispatch engine that maintains the activity list and dispatches the activity list to the policies component. - View Dependent Claims (17, 18, 19, 20)
-
Specification