I believe the controllers supported under TOS have
multiple interrupt levels that can preempt each
other if interrupts are re-enabled in the routine.

The usual interrupt mechanism is to use the processor
stack to store a return vector (usually automatically
in the interrupt call) as well as cpu state. When an
interrupt returns it pops the old stuff off the stack
and goes back to where it was before, so it's a Last
In First Out kind of deal.

I think the controller manuals have some explanation
of the specific behaviors if you really need to know.

MS

Zheng Manchun wrote:
> Hi all, is it true that a current executing interrupt handler can be 
> preempted by a new interrupt handler?
> If yes,
> -- how does the old interrupt handler resume once the new interrupt 
> handler completes its execution?
> -- does TinyOS maintain sth like the queue of the scheduler to store the 
> preempted interrupt handlers?
> -- (assume that A, B, C are all some interrupt handlers) A is preempted 
> by B, and B is preempted by C, then after C completes its execution, is 
> the order of executing A , B restricted as B then followed by A?
> 
> -- 
> Thanks & Best Regards,
> Manchun
> 
> 
> ------------------------------------------------------------------------
> 
> _______________________________________________
> Tinyos-help mailing list
> [email protected]
> https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help
_______________________________________________
Tinyos-help mailing list
[email protected]
https://www.millennium.berkeley.edu/cgi-bin/mailman/listinfo/tinyos-help

Reply via email to