[En-Nut-Discussion] Realtime Nut/OS
Harald Kipp
harald.kipp at egnite.de
Thu Mar 5 20:01:18 CET 2009
Nathan Moore wrote:
>>From other threads' perspective these would look like a mix between an ISR
> and another thread, so they might have to protect more data from these real
I'll comment on this in a reply to Thiago.
> time threads with critical sections. When a real time thread yielded you
> would need to make sure that the previously executing thread got the CPU
> back rather than reschedule since normal (already existing) threads expect
> other normal threads not to start up while they are still running.
Yes. The cooperative part must exactly continue where it had been
interrupted by any real time thread.
> Also if
> more than one real time thread wants to run at the same time they still
> fight for CPU.
> For most things using a timer ISR handler that makes itself interruptible
> would work unless it needs to sleep.
In general, yes. One advanced feature of real time threads is, that they
are running at specific priorities. That means, if a higher priority
thread becomes ready to run, it will immediately yield the lower
priority thread, that is currently running. Nut/OS itself will run at
the lowest priority.
I already see, that we have to define exact terms before starting the
implementation part. Otherwise we'll get completely confused.
Harald
More information about the En-Nut-Discussion
mailing list