[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: About Multiprocessing
Eric Valette wrote:
Joel Sherrill <joel@OARcorp.com> wrote:
Karel Gardas wrote:
this is interesting, why is this this way? Nobody contributed SMP
support yet, or does real SMP support hurts real-time functionality?
Or is this just "historic relict"?
Yes. Not really I would think. Yes.
As the SMP stuff periodically pops up, I always say the same thing:
current RTEMS locking sheme is absolutely not convénient for SMP systems
as it basically use IRQ disabling. This of course does not work on SMP
but replacing "irq disabling lock" by other locks (e.g masked spin
locks) would not work either because "irq disabling lock" can be nested
and unordered while SMP locks cannot usually.
Inside RTEMS proper, there really shouldn't be any cases of interrupt
disable nesting. The code is written so if it did happen, the world
wouldn't end but it was generally avoided as wasteful.
Now that doesn't mean there aren't cases, only that care was taken to
I don't disagree that the selection of SMP locking protocol would be
tricky. I was really only saying that I don't think it changes where
the critical sections are in the source code. Since they are always
entered and exited by specific routines, it would be possible to replace
those critical section management routines without massive changes.
Joel Sherrill, Ph.D. Director of Research & Development
joel@OARcorp.com On-Line Applications Research
Ask me about RTEMS: a free RTOS Huntsville AL 35805
Support Available (256) 722-9985