[En-Nut-Discussion] CVS Commits
Ralph Mason
ralph.mason at telogis.com
Thu Dec 18 22:30:31 CET 2003
Hi Harald,
> But, as discussed previously, there's no chance to
> switch from cooperative to preemptive multithreading.
> That would require a complete redesign of all
> shared resources.
>
It's not switching from a cooperative to a premptive kernel. It's
running a premptive kernel UNDER the cooperative when there is a
realtime requirement. The whole NutKernal remains unchanged it is as a
thread of a realtime kernel.
In the case of the MP3 player, the feeding thread would one premptive
thread (eg not a 'Nut thread') and the NutOS Kernel run as another
premptive thread. All the NutOS code continues to run unchanged, and
has no idea of the change. A Nut thread would never be and could never
be premptive to another nut thread.
It would seem like the most simple way to give realtime performance
without loosing the simplicity, and there is no rewrite of any exisiting
code. And it's totaly optional to the programmer if they use it or not.
Ralph
More information about the En-Nut-Discussion
mailing list