Whats allowed in the Init() task

Sebastian Huber sebastian.huber at embedded-brains.de
Fri Mar 1 15:41:13 UTC 2013


On 03/01/2013 03:07 PM, Matthew J Fletcher wrote:
> Do rtems applications normally create a new task straight away in Init() ? i
> ask because i seem to get stuck with no threads being scheduled after the first
> Clock_isr.

The attributes, initial mode, priority, and stack size of the init task can be 
configured with defines:

http://rtems.org/onlinedocs/doc-current/share/rtems/html/c_user/Configuring-a-System-Classic-API-Initialization-Tasks-Table-Configuration.html#Configuring-a-System-Classic-API-Initialization-Tasks-Table-Configuration

>
> So after boot_card() completes rtems context switches into Init(), there i
> setup my 10ms tick ISR which calls rtems_clock_tick(). But the original thread
> Init() never gets scheduled again after the first call to rtems_clock_tick().
> I've used JTAG to place breakpoints and i can see the code in Init() is not
> being run.
>
> I can see the ISR is being called and the interrupt acknowledged due to
> breakpoints there.

The default is a non-preemptive init task.  What do you in the init task?

-- 
Sebastian Huber, embedded brains GmbH

Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone   : +49 89 189 47 41-16
Fax     : +49 89 189 47 41-09
E-Mail  : sebastian.huber at embedded-brains.de
PGP     : Public key available on request.

Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.



More information about the users mailing list