什么是无滴答的操作系统?

时间:2009-08-12 08:55:05

标签: operating-system

我听说过“Tickless OS”一词。

  • 这是什么意思?
  • 哪些操作系统无效?
  • 它与非无票(嘀嗒?)操作系统有什么不同?

3 个答案:

答案 0 :(得分:24)

操作系统术语中的“勾选”是操作系统将唤醒以处理任何待处理事件的时间间隔。

所以,如果你有一个100Hz的滴答,那么每秒100次,操作系统会唤醒,检查是否有任何定时器已经过期,如果有,则执行他们的操作,然后再次进入睡眠状态。在无滴答系统上,操作系统会查看下一个计时器何时到期,然后再睡到那个时间,而不是每秒唤醒100次以查看是否有任何可以处理的内容。

请注意,当CPU处于活动状态时,它显然不会进入任何类型的睡眠模式,并且内核将设置中断以进行调度。当只有一个进程正在运行时,当CPU上没有运行或(在非常现代的Linux内核中)没有运行时,它只是无所事事(如注释所指出的那样)。

Linux可以使用或不使用ticks运行,使用编译时开关。我不知道任何其他系统。

答案 1 :(得分:10)

此链接提供了一些见解:Avoiding Processor Wake-Ups Saves Power

来自上述链接的片段

  

为了充分利用   最新提供的低功耗状态   处理器,操作系统有   让处理器留在   那些国家尽可能多。一个   Linux *的长期特征   操作系统一直是计时器滴答   支持帮助等服务   操作系统保持内部   时间和监视各种CPU使用情况   应用程序和流程。

     

虽然那个计时器滴答是有用的,但它   也有不幸的副作用   当处理器进入时唤醒处理器   低功率状态多达1,000   每秒一次。事实上,在一些   情况下,勾选可以防止   处理器进入深处   节能状态。显然,   这种效果可以有戏剧性   对电力使用的负面影响   系统

答案 2 :(得分:1)

RIOT(基于微内核架构)里面有无滴答调度程序。欲了解更多信息,请在下面链接: https://riot-os.org/api/group__core__sched.html