On Sat, 2004-10-09 at 01:34, Con Kolivas wrote:
Lee Revell wrote:
With VP and PREEMPT in general, does the scheduler always run the
highest priority process, or do we only preempt if a SCHED_FIFO process
is runnable?
Always the highest priority runnable.
Hmm, interesting. Would there be any advantage to a mode where only
SCHED_FIFO tasks can preempt? This seems like a much lighter way to
solve the realtime problem.
No, the linux scheduler has always been preemptible. PREEMPT and VP just allows it to preempt kernel code paths as well. It could be modified to do such a thing but apart from real time applications it would perform very badly overall.
I am talking about a mode where we only allow a SCHED_FIFO process to
preempt a kernel code path. In every other case it works like !PREEMPT.
This is apparently how kernel preemption worked on SVR4.
Yes it could. If you ask nicely, Ingo might even throw in yet another config option in the kernel. It gets messy if multiple people start hacking on the same thing when it's under heavy development.
Oh, I was not going to post a patch, I don't know the code nearly well
enough at this point :-). But it looks pretty straightforward.
Attachment:
signature.asc
Description: OpenPGP digital signature