[LITMUS^RT] Handling aperiodic tasks

John Gamboa vaulttech at gmail.com
Fri Nov 16 14:20:24 CET 2012


Hi Jonathan,

Thanks for the help. This probably solves my problem.

This will complicate a little (i believe) the admission test: I'll have to
verify if the task could be guaranteed in a moment in a possible "far
future". But, yes, it is very possible.

2012/11/15 Jonathan Herman <hermanjl at cs.unc.edu>

> Hi John,
>
> Have you considered using the "phase" parameter to rtspin? This specifies
> a delay for the first release of an rtspin process. You could start a ton
> of rtspin processes with random phases over some test interval (say 20
> seconds), call release_ts,  and the tasks would join the system at random
> points over those 20 secons.
>
>
> On Thu, Nov 15, 2012 at 5:43 AM, John Gamboa <vaulttech at gmail.com> wrote:
>
>> Hello!
>>
>> I'm sure this question has a very simple answer, but I didn't find a
>> solution yet. I'm trying to implement a "Slot Shifting plugin" for Litmus.
>> In the plugin, I should be able to handle aperiodic tasks, which, as
>> expected, should come at any time during the schedule.
>>
>> In order to start these tasks, I was planning to create a program to run
>> along with the schedule. It would sleep for a certain amount of time and
>> then start a new "rtspin". I initially planned to make this program "non
>> Real Time", but then I though "what if it should wake up at some point in
>> time, but it doesn't because the processor is so loaded that only Real Time
>> tasks are running then?". Then I though "I'll make the program Real Time",
>> but then I realized that the rtspins wouldn't be Real Time until they reach
>> a certain point in the program (where they make the
>> "task_mode(LITMUS_RT_TASK)" call).
>>
>> I believe the children of a Real Time task are not Real Time, right? (I
>> didn't find a way to test it, but it would complicate a lot my "admission
>> tests" :-))
>>
>> Do you have any suggestion? I though maybe my Real Time program could
>> itself change its children tasks to Real Time, but then wouldn't the
>> "task_mode()" call fail? (anyway, this is probably what I'll try, if I
>> don't find an easier solution)
>>
>> Thanks for your attention,
>>
>> --
>> John Gamboa
>> rabanetescebolas.blogspot.com
>>
>> _______________________________________________
>> litmus-dev mailing list
>> litmus-dev at lists.litmus-rt.org
>> https://lists.litmus-rt.org/listinfo/litmus-dev
>>
>>
>
>
> --
> Jonathan Herman
> Department of Computer Science at UNC Chapel Hill
>
> _______________________________________________
> litmus-dev mailing list
> litmus-dev at lists.litmus-rt.org
> https://lists.litmus-rt.org/listinfo/litmus-dev
>
>


-- 
John Gamboa
rabanetescebolas.blogspot.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.litmus-rt.org/pipermail/litmus-dev/attachments/20121116/97d5b473/attachment.html>


More information about the litmus-dev mailing list