Re: Linux 2.4 scheduler is RTOS-alike?

Elladan (elladan@eskimo.com)
Thu, 22 May 2003 13:47:35 -0700


Also of note, FIFO threads will actually block the same priority threads
forever. An RR thread will also block a lower priority thread forever,
but it'll get preempted by other RR threads with the same priority. A
FIFO thread is never preempted except by higher priority, it has to
yield somehow (explicitly or by blocking)

-J

On Thu, May 22, 2003 at 01:01:30PM -0700, Ming Lei wrote:
>
> will it be the same behavior If thread A and thread B both have a lot of
> printf? Suppose A get first run, does B get run at all?
>
> > this question is regarding linux kernel 2.4.7-2.4.20.
> > linux 2.4 kernel does support real time sheduler. If using FIFO real time
> > schedule policy, would the case that higher priority thread starve the
> lower
> > priority thread happen? Similarly, let's say an example: if I have higher
> > prioority thread A and lower priority thread B, thread A is running
> without
> > any wait or blocking, is there a possiblity that 2.4 scheduler may want to
> > switch to thread B? Why?
>
> Yes, FIFO threads that spin will block lower priority threads forever.
>
> Sure, guaranteed if the high prio SCHED_FIFO task doesn't block at all. If
> you have a pure cpu burner, it will starve all lower priority
> threads.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/