fork() 重试时间间隔参数
如果一个进程因为缺少调页空间页面而不能派生,调度程序会重试该派生五次。 每两次重试之间,调度程序默认延迟 10 个时钟周期。
schedo 命令的 pacefork 参数指定在重试失败的 fork () 调用之前要等待的时钟信号数。 例如,如果 fork() 子函数调用因为没有足够的可用空间创建一个新进程而失败,在等待一个指定的时间周期数后,系统会重新调用该函数。 默认值是 10,因为每个工作周期是 10 ms,系统会每 100 ms 重试 fork() 函数的调用。
如果调页空间很少只是因为瞬间不确定的工作负载峰值,那么增大重试时间间隔可允许进程延迟足够长的时间后释放(如以下示例中所示):
# schedo -o pacefork=15这样,当系统重试 fork() 的函数调用的时候,因为一些进程结束了运行而释放了调页空间的页面,所以有更高的成功几率。