Avoiding power-down on leon2

Manuel Pedro Coutinho manuelpedrocoutinho at hotmail.com
Sat Nov 10 15:14:03 UTC 2007


In RTEMS the timeslice is only used when there are two tasks of equal 
priority (and they are both the highest priority ready tasks).

I think that the timeslice you are thinking is used in the time-triggered 
architecture (RTEMS uses event-triggered).

I think you can look at RTEMS scheduling from the following way: "the 
highest priority ready task is executing". The task scheduling/dispatching 
only occurs at the "timeslice" if there are more than one ready task with 
the highest priority.

Hence, awnsering your question, if the highest priority ready task releases 
the CPU in the middle of a time slice then the next task (with equal or 
lower priority) will take over the CPU (imediately). If there aren't any 
"useful" tasks other than your "idle task" then the "idle task" will run.

Hope this awnsers your question.

Kind regards
Manuel Coutinho

>From: "Ingolf Steinbach" <ingolf.steinbach at googlemail.com>
>To: rtems-users at rtems.org
>Subject: Re: Avoiding power-down on leon2
>Date: Sat, 10 Nov 2007 16:02:28 +0100
>2007/11/9, John Pickwick <john.pickwick at free.fr>:
> > I have the same concern with LEON2 and I've done it with a low-priority 
> > that uses an infinite busy loop.
> > I have checked that the IDLE task is never called (through the tick 
> > of the CPU tool).
>That was my first idea, too. However, I don't know whether task
>switches are only performed at some sort of time slice granularity. If
>so: what happens if a high priority task releases the CPU in the
>middle of a time slice? Will the low-priority "idle" task become
>active immediately? Or will RTEMS place the CPU in power-down mode
>nevertheless (until the end of the time slice)?
>Kind regards
>rtems-users mailing list
>rtems-users at rtems.com

Transfira JÁ a última versão do Windows Live Messenger! 

More information about the users mailing list