Re: effect of sched_set{param|scheduler} on MT-process
From: Loic Domaigne (loic-dev_at_gmx.net)
Date: 08/31/04
- Next message: Ian Wilson: "Re: Xah Lee's Unixism"
- Previous message: Brian {Hamilton Kelly}: "Re: Larry Wall & Cults"
- Next in thread: Steve Watt: "Re: effect of sched_set{param|scheduler} on MT-process"
- Reply: Steve Watt: "Re: effect of sched_set{param|scheduler} on MT-process"
- Maybe reply: Kamal R. Prasad: "Re: effect of sched_set{param|scheduler} on MT-process"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Tue, 31 Aug 2004 21:27:49 +0200
Common laddies and gentlemen!
Should I take your silence as a confession that my understanding is
correct? Can hardly believe it ;-)
Cheers,
Loic.
> Hello everybody,
>
> After many efforts (I am not a native standardese speaker, so...) , I
> think I finally deciphered what's the Single Unix Specification is
> telling us regarding the effect of sched_setparam() and
> sched_setscheduler() on multi-threaded process.
>
> But I'd like to check if I didn't missed something, or if I got
> something wrong! Any comments shall be appreciated.
>
> TIA,
> Loic.
>
> | The effect of this function on individual threads is dependent on
> | the scheduling contention scope of the threads:
> |
> | (1) For threads with system scheduling contention scope, these
> | functions shall have no effect on their scheduling.
>
> I understand it that way:
> Threadings using a 1:1 model (most implementations),
> sched_set{scheduler|param} is a NOP.
>
> | (2) For threads with process scheduling contention scope, the
> | threads scheduling policy and associated parameters shall not be
> | affected. However, the scheduling of these threads with respect to
> | threads in other processes may be dependent on the scheduling
> | parameters of their process, which are governed using these
> | functions.
>
> I read it like:
> Threadings using a pure user-space implementation (M:1 model),
> sched_set{scheduler|param} is a NOP within that the threads of that
> process. However, the scheduling a the process might be changed.
> Indeed from a kernel viewpoint, there is only "one thread" to
> schedule. So it makes sense to evt. change its scheduling. That
> explains the sentence "However, the scheduling of these threads wrt
> [...]"
>
> | If an implementation supports a two-level scheduling model in which
> | library threads are multiplexed on top of several kernel-scheduled
> | entities, then the underlying kernel-scheduled entities for the
> | system contention scope threads shall not be affected by these
> | functions.
>
> That's the mixed case of the two previous one. KSE competing for
> system resources must be invariant to respect case 1).
>
> | The underlying kernel-scheduled entities for the process contention
> | scope threads shall have their scheduling policy and associated
> | scheduling parameters changed to the values specified in policy and
> | param, respectively.
>
> That's what we saw in case 2).
>
>
> | Kernel-scheduled entities for use by process contention scope
> | threads that are created after this call completes shall inherit
> | their scheduling policy and associated scheduling parameters from
> | the process.
>
> That's a logical consequence. All Process Contention Scope threads
> that are mapped to a particular kernel thread, are bound to it. And
> thus in particular to its scheduling characteristics. Hence this
> inheritance property.
>
>
> Does it make sense?
- Next message: Ian Wilson: "Re: Xah Lee's Unixism"
- Previous message: Brian {Hamilton Kelly}: "Re: Larry Wall & Cults"
- Next in thread: Steve Watt: "Re: effect of sched_set{param|scheduler} on MT-process"
- Reply: Steve Watt: "Re: effect of sched_set{param|scheduler} on MT-process"
- Maybe reply: Kamal R. Prasad: "Re: effect of sched_set{param|scheduler} on MT-process"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|