Definition in file rk_util.c.
Include dependency graph for rk_util.c:
Go to the source code of this file.
Defines | |
#define | MAX_RK_SETS 128 |
#define | MAX_PID_COUNT 128 |
Functions | |
rk_resource_set_t | rk_resource_set_get_by_name (const char *name) |
Search for a resource set by name and return the first one encountered. | |
int | rk_resource_set_proc_compare (const void *a, const void *b) |
Function for comparing two rk_resource_set_proc objects. | |
int | rk_resource_set_proc_cache_search (rk_resource_set_proc_cache_t pc, pid_t pid) |
Search for a particular process ID in a process cache. | |
int | rk_resource_set_proc_cache_add (rk_resource_set_proc_cache_t pc, pid_t pid) |
Add an element to a process cache. | |
unsigned long long | rk_resource_set_proc_cache_intersect (rk_resource_set_proc_cache_t pc, pid_t *procs, size_t procs_length) |
Intersect the process cache array with a list of the currently active process IDs. | |
int | rk_resource_set_get_usage (rk_resource_set_t rs, rk_resource_set_usage_t rsu_inout, rk_resource_set_proc_cache_t pc_inout) |
Compute the total resource usage for all the processes in a resource set. | |
void | rk_resource_set_proc_cache_release (rk_resource_set_proc_cache_t pc) |
Release any resources stored in the given process cache. |
|
Search for a resource set by name and return the first one encountered.
Definition at line 52 of file rk_util.c. References NULL_RESOURCE_SET, require, RK_NAME_LEN, rk_resource_set_get_name(), rk_resource_set_t, and rk_resource_sets_get_list(). Referenced by RKTask::BeginCPUScheduling(), main(), paGetAdvocate(), rktProcessOptions(), and rts_grab_schedulable(). |
Here is the call graph for this function:
|
Compute the total resource usage for all the processes in a resource set. Currently, this is implemented by stepping through all of the processes attached to the resource set and pulling the usage information from "/proc/<pid>/stat". Unfortunately, the standard kernel does not provide high-resolution data in the "stat" file, so the file in the "patch" directory must be applied to the kernel before this function can be used.
Definition at line 244 of file rk_util.c. References ensure, rk_resource_set_get_proclist(), rk_resource_set_proc_cache_add(), rk_resource_set_proc_cache_intersect(), rk_resource_set_proc_cache_search(), and rk_resource_set_t. Referenced by main(), paGetAdvocate(), RKObserverAdvocate::run(), sigalrm(), and test_get_usage(). |
Here is the call graph for this function:
|
Add an element to a process cache.
Definition at line 161 of file rk_util.c. References ensure, require, rk_resource_set_proc_cache_search(), and rk_resource_set_proc_compare(). Referenced by rk_resource_set_get_usage(). |
Here is the call graph for this function:
|
Intersect the process cache array with a list of the currently active process IDs.
Definition at line 207 of file rk_util.c. References require. Referenced by rk_resource_set_get_usage(). |
|
Release any resources stored in the given process cache.
Definition at line 411 of file rk_util.c. References require. Referenced by main(), and RKObserverAdvocate::run(). |
|
Search for a particular process ID in a process cache.
Definition at line 117 of file rk_util.c. References ensure, and require. Referenced by rk_resource_set_get_usage(), and rk_resource_set_proc_cache_add(). |
|
Function for comparing two rk_resource_set_proc objects. Required for quicksort.
Definition at line 85 of file rk_util.c. References ensure, and require. Referenced by rk_resource_set_proc_cache_add(). |