多线程编程指南

分时调度

分时调度可以在分时调度类的 LWP 中公平地分布处理资源。内核的其他部分可以在短时间内独占处理器,而不会缩短用户察觉的响应时间。

priocntl(2) 调用可以设置一个或多个进程的 nice(2) 级别。priocntl() 调用还会影响进程中所有分时类 LWP 的 nice() 级别。nice() 级别的范围通常为 0 到 +20,对于具有超级用户权限的进程,该范围为 -20 到 +20。值越低,优先级越高。

分时 LWP 的分发优先级是根据 LWP 的即时 CPU 使用率及其 nice() 级别计算出来的。nice() 级别指示 LWP 相对于分时调度程序的优先级。

nice() 值越大的 LWP 获得的总处理份额越小,但都为非零值。接收处理量较大的 LWP 的优先级与接收处理量很少或没有接收任何处理的 LWP 的优先级要低。