我是Linux内核和低级编程的新手。我想知道linux调度程序在时间复杂度上应该是O(1)。了解linux调度程序
,我碰到下面的文章是非常丰富的,但我有理解我已复制下面 http://www.ibm.com/developerworks/linux/library/l-scheduler/
的pargraph问题调度的任务很简单:选择在最高 优先级的任务要执行的列表。为了使此过程更高效,使用位图来定义任务何时位于给定优先级列表中。因此,在大多数体系结构中,找到第一位设置指令是 ,用于查找在五个32位字 (对于140个优先级)之一中设置的最高优先级位。找到执行 的任务所需的时间不取决于活动任务的数量,而取决于优先级的数目 。这使得2.6调度程序成为O(1)进程,因为不管活动任务的数量如何,调度时间都是固定的和确定的。
为什么5个32位的字对于140个队列?谁是find-first-bit-set指令有助于选择140个队列之一?
谢谢。我的问题很古老,我的回答很好。 –