This is the mail archive of the ecos-discuss@sources.redhat.com mailing list for the eCos project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: scheduling of DSRs


On Thu, 2001-11-15 at 06:11, CT Mar wrote:
> Are the DSRs time-sliced?  Looking at intr.cxx, if there are multiple DSRs 
> to run, they are executed one after the other and can only be interrupted 
> to run the ISR.  So it would not be a good idea to have long a long DSR, 
> since it would block the execution of other DSRs and threads, right?
> 

Your observation is accurate - once DSRs start to run, they can only be
[temporarily] interrupted by ISR processing.  Normal thread processing
will not resume until all pending DSRs have completed.

The model is that DSR processing is still interrupt processing, just 
done when the kernel is in a state to handle further interrupts easily.
DSRs are not meant for any processing which takes a long time - that's
what threads (which _can_ be scheduled, prioritized, etc) are for.



Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]