| 
                         线程(或任务)将通过使用大量CPU来丢失动态优先级,并通过使用较少的CPU获得优先级.如何为n个线程计算这些优先级(使用正常调度策略SCHED_OTHER)?
最佳答案
引自this 
The Linux 2.6.8.1 scheduler rewards I/O-bound tasks and punishes 
  CPU-bound tasks by adding or subtracting from a task’s static 
  priority. The adjusted priority is called a task’s dynamic priority, 
  and is accessible via the task’s prio variable (e.g. p->prio where p 
  is a task). If a task is interactive (the scheduler’s term for I/O 
  bound),its priority is boosted. If it is a CPU hog,it will get a 
  penalty. In the Linux 2.6.8.1 scheduler,the maximum priority bonus is 
  5 and the maximum priority penalty is 5. Since the scheduler uses 
  bonuses and penalties,adjustments to a task’s static priority are 
  respected. A mild CPU hog with a nice value of -2 might have a dynamic 
  priority of 0,the same as a task that is neither a CPU nor an I/O 
  hog. 
 
我觉得这是一个公平的解释.优先级的计算基于CPU绑定线程还是I / O绑定线程.关于你在问题中提到的内容,通过使用较少的CPU获得优先级是通过交互(I / O绑定)获得优先级.我希望这段摘录能回答你的问题……                         (编辑:莱芜站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |