lkml.org 
[lkml]   [2003]   [Aug]   [18]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] O16int for interactivity


Timothy Miller wrote:

>
>
> Nick Piggin wrote:
>
>>> If another task exists at a higher priority, then it gets run at
>>> that point.
>>
>>
>>
>>
>> Well loosely, yes. Actually, it happens if the task exists and is
>> "running",
>> and has timeslice left.
>
>
>> That only happens in scheduler_tick when the current
>> task has finished its timeslice and the priority arrays are about to be
>> switched.
>
>
> What only happens then?


The task being preempted.

>
> I'm confused again. Are you talking about swapping the active and
> expired arrays?


Yes.

>
> Of course, all bets are off if the current task actually uses up it
> whole timeslice. Then it's not being preempted in quite the same way.


OK ;)

>
> So, then, if there are not tasks left in the active array, naturally,
> the highest priority task from what was once the expired array will be
> run, and that may be of higher priority.
>
> Is that what you're saying?


Yep.

>
>
> > The required conditions for preemption can also occur when a task
>
>> is being woken up, (after sleeping or newly forked).
>
>
> This is the case that I was thinking of. No swapping of queues. It's
> just that a higher priority task was sleeping (or not existing) which
> could cause the current task to be preempted before its timeslice ends.


Yep.

-
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/

\
 
 \ /
  Last update: 2005-03-22 13:47    [W:0.030 / U:1.408 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site