Questions about the implementation of RMS on rtems

Anand Krishnan anandkp92 at
Thu Mar 26 03:00:25 UTC 2015

I am implementing the RM scheduler in C. Not how it is implemented in a
system, but as a standalone C program: you give the input - #tasks and the
WCET and period for each task and it schedules it.

I've chosen the granularity of CPU clock to be 1sec.
Currently, I assume the task set to be schedulable. The program just
presents an Gantt Chart

I need to add schedulability test and try reduce the CPU clock guarantee
and implement it.

I'm not sure if it helps you much, but you could go through it.


On Wed, Mar 25, 2015 at 5:30 PM, yuanbin zhou <hduffddybz at> wrote:

> Sorry for late reply because of paper reading, taking courses and
>  unimportant things.
> >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.
> Recently I read the paper written by C.L.LIU(Scheduling Algorithms for
> Multiprogramming in a Hard-Real-Time Environment), this paper talks about
> the algorithm of RM Scheduling and the proof of it.But now what I am more
> concerned about is how to  apply this rule to the analysis of real-time
> system.Maybe the analysis of the schedulability of this this system should
> be done by off-line tools before system start up.But the analysis of
> worse-case execution time may not correct which may result in execution
> overrun,so some papers put forward some resource reservation mechanisms to
> solve this problem.So confused about the paper reading, so I want to know
>  how to handle this situation in "rtems"since that I cannot figure out any
> information from the user manual.
>> >
>> >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
> I read some papers about the handle of periodic tasks and aperiodic tasks.There
> existed two kinds of method to solve this problem.
> First:the system can schedule the aperiodic tasks by periodic server
> which allocates a certain amount of budget for aperiodic execution in every
> period time.
>  second:there is no benefit for the periodic tasks to complete their
> tasks much before their deadlines. So when the aperiodic task coming, it
> steals the available slack from the periodic tasks and execute it as soon
> as possible.
> So can give more detail about the implementation of this in rtems which I
> cannot find anything from the user manual and it is really complicated to
> find the corresponding source file for all the source files located in
> only one directory!
> _______________________________________________
> users mailing list
> users at
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>
-------------- next part --------------

4 1

5 2

20 5
-------------- next part --------------
A non-text attachment was scrubbed...
Name: rm4.c
Type: text/x-csrc
Size: 5942 bytes
Desc: not available
URL: <>

More information about the users mailing list