我想知道 Linux 内核调度逻辑中是否使用了两个调度(争用)范围(SYSTEM 和 PROCESS)。 POSIX 支持用户级和系统可见可调度单元的 PROCESS 范围 pthread(MXN 模型)和 SYSTEM 范围 pthread(1X1 模型)。 Ulrich Drepper 和 Ingo Molnar (Red Hat) 撰写的文章“The Native POSIX Thread Library for Linux”表明 PROCESS 争用范围过于杀伤力,因此不鼓励使用。
内核 3.x 和 4.x 是否也支持 PROCESS 范围 Pthreads 还是仅支持 SYSTEM 范围?
另外,SCHED_OTHER 类现在使用的调度程序是什么?
有人对 SCHED_OTHER、FIFO 和 RR 进行过性能或行为分析吗?这些已经存在相当长一段时间了。我相信不同类别的工作负载(例如 HPC 或 RT)可能会受到调度程序选择的正面或负面影响。但有具体的绩效结果吗?
谢谢你! ——迈克尔