rtems_wake_after
Jerry Needell
jerry.needell at unh.edu
Fri Jun 20 14:55:53 UTC 2003
On Friday, Jun 20, 2003, at 10:34 US/Eastern, Fabio Degiovanni - Eicas
wrote:
> Dear Jarry Needell,
> I think you were right: it is a problem
> of overflow. I tried with CONFIGURE_MICROSECONDS_PER_TICK 1000 and
> rtems_task_wake_after(1000). The problems is at the 305th iteration. I
> tried to put the directive rtems_clock_get(
> RTEMS_CLOCK_GET_TICKS_SINCE_BOOT, &inter ); to see at what time (in
> ticks this happens) and I found out at 305266 ticks.
I was just about to try that myself :-)
> I don't understand what variables is subjected to overflow. I'm used
> to Linux real-time: in that case there is a periodic interrupt timer
> that is loaded to the value of MICROSECONDS_PER_TICK 1000, it counts
> down till 0 then it gives an interrupt, the interrupt service routine
> increment the value of ticks an reset the PIT to the
> MICROSECONDS_PER_TICK value. If RTEMS follows nearly the same
> procedure I don't see any point in which an overflow can occur. How
> does RTEMS work? What the variable that is subject to overflow? Why?
> Thank you very much for your help
>
The problem is not in RTEMS, but in the simulator. On real hardware, it
does not crash and it runs in "real time" :-) .
- Jerry
> Fabio Degiovanni
>
> --
> Dott. Ing. Degiovanni Fabio
> Eicas Automazione
> Via Vincenzo Vela, 27 10128 Torino (ITALIA)
> Telefoni +39-11-562.37.98/562.3088 Fax +39-11-436.06.79
>
More information about the users
mailing list