[PATCH] Cygwin: sched_setscheduler: accept SCHED_OTHER, SCHED_FIFO and SCHED_RR
Corinna Vinschen
corinna-cygwin@cygwin.com
Tue Dec 3 19:42:04 GMT 2024
On Dec 3 08:23, Brian Inglis wrote:
> On 2024-12-03 06:13, Corinna Vinschen wrote:
> > On Dec 3 10:20, Christian Franke wrote:
> > > SCHED_IDLE: Ignore nice value and set IDLE_PRIORITY_CLASS ?
> >
> > Would make sense, I guess.
> > [...]
> > SCHED_SPORADIC is a bit of a problem. It requires extension of the
> > sched_param struct with values we're not able to handle.
>
> => SCHED_IDLE?
> Could be something like a background process on a real time system?
>
> > Also, SCHED_SPORADIC doesn't exist in Linux either, so why bother.
>
> https://pubs.opengroup.org/onlinepubs/9799919799/
>
> sched.h Change History:
>
> "Sporadic server members are added to the sched_param structure, and the
> SCHED_SPORADIC scheduling policy is added for alignment with IEEE Std
> 1003.1d-1999."
>
> It's been in POSIX since at least Issue 6 thru 8, with no changes in last go
> round, so presumably it exists and is used on some major platform(s)?
Nevertheless, it's optional:
[SS] Process Sporadic Server
The functionality described is optional. The functionality described
is also an extension to the ISO C standard.
It's only supported on systems defining _POSIX_SPORADIC_SERVER or
_POSIX_THREAD_SPORADIC_SERVER.
Also, the desired behavior is quite complex. Check out
https://pubs.opengroup.org/onlinepubs/9799919799/functions/V2_chap02.html#tag_16_08_04_01
We'll never be able to model it and given Linux doesn't support it...
Corinna
More information about the Cygwin-patches
mailing list