LEDGER-BASED RESOURCE TRACKING
First Claim
1. A computer-implemented method comprising:
- receiving a resource request from a task, the task associated with a ledger object including a reference to a ledger template and a ledger entries object, wherein the resource is registered for tracking in the ledger template; and
updating a record of resources consumed in an entry corresponding to the resource in the ledger entries object, wherein the updating comprises comparing a balance of resources consumed against a predefined resource limit in the entry, and setting a flag when the balance exceeds the predefined limit.
1 Assignment
0 Petitions
Accused Products
Abstract
Disclosed are systems, methods, and non-transitory computer-readable storage media for tracking and managing resource usage through a ledger feature that can trigger complex real-time reactions. The resource tracking can be managed through a ledger module and a ledger data structure. The ledger data structure can be updated each time a task requests a resource. Additionally, as part of the update, the ledger module can verify whether a resource has been over consumed. In response to the detection of an over consumption, the ledger module can set a flag. At some later pointer when the thread is in a stable, well-understood point, the ledger module can check if the flag has been set. If the flag has been set, the ledger module can call the appropriate callback function, which can react to the over consumption in a resource specific manner.
-
Citations
25 Claims
-
1. A computer-implemented method comprising:
-
receiving a resource request from a task, the task associated with a ledger object including a reference to a ledger template and a ledger entries object, wherein the resource is registered for tracking in the ledger template; and updating a record of resources consumed in an entry corresponding to the resource in the ledger entries object, wherein the updating comprises comparing a balance of resources consumed against a predefined resource limit in the entry, and setting a flag when the balance exceeds the predefined limit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A system comprising:
-
a processor; a task; a resource management module configured to control the processor to receive a resource request from the task; and a ledger module configured to control the processor to update a resource consumption record related to the task, the resource consumption record stored in an entry corresponding to the resource in a ledger entries object associated with the task, wherein the updating comprises setting a flag when a resource consumption balance exceeds a limit specified in the entry. - View Dependent Claims (10, 11, 12, 13, 14)
-
-
15. A non-transitory computer-readable storage media storing instructions which, when executed by a computing device, causes the computing device to perform steps comprising:
-
receiving a request for a first resource from a task, the task associated with a ledger object including a reference to a ledger template and a ledger entries object, wherein the first resource is registered for tracking in the ledger template; and updating a record of resources consumed in an entry corresponding to the first resource in the ledger entries object, wherein the updating comprises comparing a balance of resources consumed against a predefined resource limit in the entry, and setting a flag when the balance exceeds the predefined limit. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
-
22. A computer-implemented method comprising:
-
updating an entry corresponding to a resource in a ledger entry object specific to a task in response to receiving a request for the resource from the task, the updating comprising recording a resource consumption in the entry specified in the request, and setting a flag when a resource consumption balance for the entry exceeds a resource limit defined in the entry; identifying that the flag is set prior to the task returning to user space; and calling a callback function specific the resource. - View Dependent Claims (23, 24, 25)
-
Specification