[coyotos-dev] Scheduling, Intervals, and Time of Day
Jonathan S. Shapiro
shap at eros-os.com
Fri Feb 16 07:59:30 CST 2007
On Fri, 2007-02-16 at 00:04 +0100, Pierre THIERRY wrote:
> Yes. I was about to propose that we could continue to discuss userland
> issues on our side, but I suspect that some of them will have strong
> dependencies on how kernels issues will be solved, so let's wait for a
> clear proposal about kernel sleep capability and build on that.
If you guys have experience with real-time stuff, trying to help
identify a scheduler for us would be helpful.
My thoughts on scheduling at the kernel level are pretty simple:
1. I believe (without experience) that the kernel level scheduler
should be table driven.
2. It appears to me (without experience) that the traditional
``this process needs a real-time slice'' approach won't work
well in component systems. One needs to be able to build
end to end schedules where a group of processes collectively
use a schedule slot.
This introduces the possibility that (through error or intent)
more than one of these processes might be ready simultaneously.
Therefore I think that every real time slice needs to run a minor
scheduler to select among its candidates -- perhaps round robin --
where the usual expectation is that only one candidate is runnable.
If these assumptions hold up, then the questions of interest are:
1. What algorithm should the admission control agent use to build the
scheduling table?
2. Based on this, what is the API to the scheduling admission agent?
3. What do we *need* in terms of feedback (concrete cases only, not
wish lists).
4. Who controls feedback, the application or the user (I prefer
"user")?
shap
--
Jonathan S. Shapiro, Ph.D.
Managing Director
The EROS Group, LLC
+1 443 927 1719 x5100
More information about the coyotos-dev
mailing list