[ECOS] nested interrupts

Nick Garnett nickg@cygnus.co.uk
Thu Jan 18 05:00:00 GMT 2001


"Xavier Wang" <xavierwang@ms19.url.com.tw> writes:

> If there are some pending DSRs, it seems that these DSRs are executed 
> in reverse order of interrupts/ISRs rather than in priority order. Does it
> cause more unpredictability for a real-time system? Can DSRs be
> prioritized? Is there a way to work around this?
> 

DSRs are unprioritized. The priority supplied when creating an
interruopt is intended to prioritize the ISR in the hardware if that
is possible, or select its place in the chain when chained interrupts
are enabled.

There would be no advantage in prioritizing DSRs. All pending DSRs are
always run whenever any DSR can be run, and all DSRs are higher
priority than any threads and lower priority than any interrupts. The
order they get run in at this point is irrelevant, since the system
will not proceed until all of them have finished. Prioritized
execution should happen in threads, that's what they are there for.

-- 
Nick Garnett, eCos Kernel Architect
Red Hat, Cambridge, UK


More information about the Ecos-discuss mailing list