I noticed the speed up because I measured the time to execute a heavy task.
About the application, I am using TinyOS as the platform for my research
language.
The language has a primitive to run heavy tasks, but the runtime needs to
interrupt them when an external event triggers.
Thanks for the answer.

-- 
Francisco Sant'Anna
http://www.lua.inf.puc-rio.br/~francisco/

2011/9/15 João Gonçalves <[email protected]>


> 2- do these synchronous events end up in the task queue?
>
>
> if you trace down a call to startOneShot() or startPeriodic() you'll see
> that there are things ending up in the queue.
> That should not be a problem because TinyOS tasks are suposed to be short
> and not suposed to keep the rest of the system (the synchronous code)
> waiting for them to finish.
>
>>
>> I assumed that they do end up in the task queue.
>> That said, I included in the file SchedulerBasicP.nc (and corresponding
>> interface) the following command:
>>
>> command bool Scheduler.isEmpty ()
>> {
>>     return m_head == NO_TASK;
>> }
>>
>> Hence, instead of continuously re-scheduling a heavy duty task, I first
>> check if there is a pending task (e.g. Timer.fired).
>> It seems to be working correctly, the sample application boosted 10x, but
>> I am not 100% sure about my approach.
>>
>> What application are you using, and how did you get to notice that 10x?
>
>
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to