RRES Module main interface header. More...
#include "rres_config.h"#include "qos_types.h"#include "kal_sched.h"#include "rres_ready_queue.h"Go to the source code of this file.
Defines | |
| #define | MIN_SRV_PERIOD 1000LU | 
| usec.   | |
| #define | MIN_SRV_MAX_BUDGET 0LU | 
| usec.   | |
| #define | MIN_SRV_PERIOD_DEBUG 200000LU | 
| usec.   | |
Functions | |
| static struct task_list * | rres_find_task_list (kal_task_t *task) | 
| static server_t * | rres_find_by_task (kal_task_t *task) | 
| Return the pointer to the server the task is attached to, or NULL.   | |
| int | rres_init_module (void) | 
| Initialise rres module.   | |
| void | rres_cleanup_module (void) | 
| Cleanup rres module.   | |
| qos_rv | rres_create_server (server_t **new_srv, qres_time_t max_budget, qres_time_t period, unsigned long flags) | 
| Create a new server for task t.   | |
| qos_rv | rres_init_server (server_t *new_srv, qres_time_t max_budget, qres_time_t period, unsigned long flags) | 
| Initialize an already allocated server_t (or derived class).   | |
| qos_rv | rres_attach_task (server_t *srv, struct task_struct *task) | 
| Attach a task to an existing (possibly empty) server.   | |
| qos_rv | rres_detach_task (server_t *srv, struct task_struct *task) | 
| Detach specified task from its own RRES server.   | |
| qos_rv | rres_destroy_server (server_t *rres) | 
| Destroy the specified server.   | |
| qos_rv | rres_cleanup_server (server_t *rres) | 
| Cleanup the specified server, which must already be empty.   | |
| qos_rv | rres_check_destroy (server_t *srv) | 
| Check if server empty and, if appropriate for the server flags, destroy it.   | |
| server_t * | rres_find_by_id (qres_sid_t sid) | 
| Return the pointer to the server with identification number "id".   | |
| qres_sid_t | rres_get_sid (server_t *rres) | 
| Returns a server unique identifier.   | |
| qos_rv | rres_set_params (server_t *rres, qres_time_t budget, qres_time_t period) | 
| Set budget and period of RRES server (us).   | |
| qos_rv | rres_get_params (server_t *rres, qres_time_t *budget, qres_time_t *period) | 
| Get RRES scheduling params (us).   | |
| qos_rv | rres_set_budget (server_t *rres, qres_time_t budget) | 
| Set budget of RRES server (us).   | |
| static qres_time_t | rres_get_curr_budget (server_t *srv) | 
| Get remaining budget for the current server instance (us).   | |
| qres_time_t | rres_get_period (server_t *rres) | 
| Get RRES server period (us).   | |
| static qos_rv | rres_get_deadline (server_t *rres, struct timespec *p_deadline) | 
| Get RRES current deadline (timespec).   | |
| static unsigned long | rres_get_flags (server_t *rres) | 
| Get RRES server flags.   | |
| qres_time_t | rres_get_exec_time (server_t *rres) | 
| Get execution time since server creation (clocks).   | |
| server_t * | rres_get_default_server (void) | 
| Get pointer to default server.   | |
| qos_rv | rres_init_default_server (server_t *srv, qres_time_t Q, qres_time_t P, unsigned long flags) | 
| Initialize the default server.   | |
| int | rres_has_server (struct task_struct *t) | 
| returns true if the task is served by any server   | |
| int | rres_empty (server_t *srv) | 
| return true if the server has no task to serve   | |
| int | rres_running (server_t *srv) | 
| Check if the server is currently running.   | |
| static struct task_struct * | rres_any_ready_task (server_t *srv) | 
| Just return one of the attached ready tasks, or NULL if none exists.   | |
| static struct task_struct * | rres_any_blocked_task (server_t *srv) | 
| Just return one of the attached blocked tasks, or NULL if none exists.   | |
| static kal_lock_t * | rres_get_spinlock (void) | 
Variables | |
| spinlock_t | rres_lock | 
RRES Module main interface header.
Definition in file rres_interface.h.
 1.6.3