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