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]

Re: confused about Interrupt handling.


Tony Ko wrote:
> 
> hi.
> compare two sentences below
> 
> "For this to work in the presence of interrupts, it is necessary for
> the Interrupt Service Routines (ISR) to defer any scheduler-oriented
> operations until the lock is about to go zero. We do this by splitting
> the work of an ISR into two parts, with the second part, the Deferred
> Service Routine ( DSR ), being queued until the scheduler decides it is
> safe to run. "
> 
> " After the ISR exits, but before the kernel scheduler is invoked
> again, a delayed service routine ( DSR ) will be invoked. It executes
> with scheduling disabled, but with interrupts enabled, so that further
> invocations of the same DSR can be queued."
> 
> these two sentences are from ecos-ref.4.
> 
> I'm confused  about " actually when DSR process".
> After scheduling invoked again  or  Before scheduling invoked again?

The scheduler must call a DSR straight away if it is safe to so (dependent
on the scheduler lock) before it can do any scheduling.
 
> I think DSR is a kind of scheduler-oriented operation, right?

I'm not sure it can be described in those terms. It's a routine that runs
while scheduling does not happen.

Jifl
-- 
Red Hat, Rustat House, Clifton Road, Cambridge, UK. Tel: +44 (1223) 271062
Maybe this world is another planet's Hell -Aldous Huxley || Opinions==mine
Come to the Red Hat TechWorld open source conference in Brussels!
Keynotes, techie talks and exhibitions    http://www.redhat-techworld.com/


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