Questions about the implementation of RMS on rtems

Joel Sherrill joel.sherrill at
Thu Mar 19 13:24:49 UTC 2015

On March 19, 2015 2:13:05 AM CDT, yuanbin zhou <hduffddybz at> wrote:
>I am now trying to study and implement an RM scheduler for an RTOS from
>China. So what I to do first is to read the document and source code
>about RMS on rtems, but I really get some troubles, can anyone give me
>some explanations  on it.
>1.I read the demos from the documentation(single periodic task with
>multi sets of actions), (single periodic task with single set of
>action), so can provide the demo for multi periodic tasks with single
>or double multi sets of actions? 
>It seems that each thread owns a rm period and the thread priority can
>depend on the period time . Unfortunatelly I did not find the API to
>handle the priority assignment.

Most tests set the priority at creation time and do not dynamically change it using rtems_task_set_priority.

>2. How to use the processor utilization rule and first deadline rule to
>guarantee as more as possible tasks to run since the execution time of
>each tasks cannot accurately know before the task run?

This is in the users manual and in the original 1973 JACM paper referenced.

It also includes the assumptions about the underlying OS and environment.

>3. Obey the rate monotonic scheduling algorithm, we can easily set the
>priority of every periodic tasks. But in many applications, it consists
>both periodic and aperiodic tasks(such as irregular interrupt which is
>also essential task), so how to handle the priority setting for this
>situation or just set the irregular task's priority by manual?

You need to do some academic paper research. There are a number of papers describing how to address various task patterns.


More information about the users mailing list