[PATCH] Cygwin: sched_setscheduler: accept SCHED_OTHER, SCHED_FIFO and SCHED_RR
Brian Inglis
Brian.Inglis@SystematicSW.ab.ca
Mon Dec 2 20:32:20 GMT 2024
On 2024-12-02 11:28, ASSI wrote:
> Christian Franke writes:
>> + nice value sched_priority Windows priority class
>> + 12...19 1....6 IDLE_PRIORITY_CLASS
>> + 4...11 7...12 BELOW_NORMAL_PRIORITY_CLASS
>> + -4....3 13...18 NORMAL_PRIORITY_CLASS
>> + -12...-5 19...24 ABOVE_NORMAL_PRIORITY_CLASS
>> + -13..-19 25...30 HIGH_PRIORITY_CLASS
>> + -20 31...32 REALTIME_PRIORITY_CLASS
>
> That mapping looks odd… care to explain why the number of nice values
> and sched_priorities doesn't match up for each priority class? 39
> possible values for one can't match to 32 for the other of course, but
> which ones are skipped and why?
See also miscfuncs.cc which maps nice<->winprio with a 40 entry table, and
cygwin-doc proc(5) or cygwin-ug-net/proc.html which explains the mapping to
scheduler priorities and policies.
Also relevant may be man-pages-posix sched.h(0p), man-pages-linux sched(7) and
proc_pid_stat(5).
You may also wish to consider whether SCHED_SPORADIC should be somewhat
supported for POSIX compatibility, and SCHED_IDLE, SCHED_BATCH, SCHED_DEADLINE
for Linux compatibility?
--
Take care. Thanks, Brian Inglis Calgary, Alberta, Canada
La perfection est atteinte Perfection is achieved
non pas lorsqu'il n'y a plus rien à ajouter not when there is no more to add
mais lorsqu'il n'y a plus rien à retirer but when there is no more to cut
-- Antoine de Saint-Exupéry
More information about the Cygwin-patches
mailing list