最近在学习CFS调度算法,看了几篇文章 ,文章中得结论很多都是。
nice值越小的进程,优先级高且权重越大,vruntime值越小,其虚拟时钟比真实时钟跑的慢,也就可以获得比较多的运行时间
nice值越大的进程,优先级低且权重越低,vruntime值越大,其虚拟时钟比真实时钟跑的快,反而获得比较少的运行时间。
但是我根据 公式
实际运行时间公式 = 调度周期 * 进程权重 / (所有进程权重之和);
虚拟运行时间公式 = 实际运行时间*nice_0_load / 权重
但是从公式算完了的结论正好相反
进程的权重高低,只能影响 实际运行时间的长短
虚拟运行时间,只是保证平均调度的,各个进程之间的虚拟运行时间是相等的,不管权重如何变化。 权重的变化的确会导致 虚拟运行时间变化,但是进程之间的虚拟时间一直相等