patbalbe@disca.upv.es
P.
Balbastre
2002-11-06
make_linux_task_cbs_server
3rtl
make_linux_task_cbs_server
Change linux task parameters to execute it with CBS scheduling policy.
#include <rtl_sched.h>
extern void make_linux_task_cbs_server
hrtime_t start
hrtime_t initbudget
hrtime_t deadline
hrtime_t period
int priority
DESCRIPTION
make_linux_task_cbs_server Change linux task parameters to execute it with SCHED_CBS_NP scheduling policy.
SCHED_CBS_NP scheduling policy efficiently handle soft real-time
requests with a variable or unknown execution behaviour under SCHED_EDF_NP
scheduling policy. To avoid unpredictable delays on hard real-time tasks, soft tasks are isolated
through a bandwidth reservation mechanism, according to wich each soft task is assigned a deadline,
computed as a function of the reserved bandwidth and its actual requests. If a thread requires to
execute more than its expected computation time, its deadline is postponed so that
its reserved bandwidth is not exceeded.
This function allows linux task to serve aperiodic events. This way, when an aperiodic event arrives, the linux task "inherits" the properties of the CBS thread by means of the make_linux_task_cbs_server function.
SCHED_EDF_NP is a scheduling policy that
combines both static and dynamic priority scheduling. Threads
are ordered by priority, and among the same static priority
threads with closer deadline first. Each thread has two
scheduling attributes: priority and deadline. It is a Rate
Monotonic policy and an EDF policy at each priority level.
RETURN VALUE
No value returned.
ERRORS
Parameter checking is not performed. Incorrect parameters may result in random errors.
AUTHOR
Patricia Balbastre <patricia@disca.upv.es>
Pau Mendoza <pabmench@disca.upv.es>
SEE ALSO
pthread_setinitbudget_np(3rtl).
pthread_attr_setinitbudget_np(3rtl).
pthread_initcbs_np(3rtl).