2009-08-26 51 views
4

我一直在使用Linux操作系统阅读关于实时系统的论文,而“调度抖动”一词反复使用,没有定义。什么是调度抖动?

什么是调度抖动?这是什么意思?

回答

8

抖动是基于时间的信号的不规则性。例如,在网络中,抖动将是网络中数据包延迟的可变性。在调度中,我假定抖动是指分配给进程的时间片的不等式。

在这里阅读更多http://en.wikipedia.org/wiki/Jitter

+0

我打算给你接受的答案,因为你帮我弄清了这件事,并给了我关键的一块。在这种情况下,我认为我自己的回答更加尖锐。但是,您无法阅读我的想法或我的论文,并且我认为在这种情况下考虑我的答案是最好的,这是非常自私的,所以您明白了。 :) – 2009-08-26 18:24:57

6

因此,鉴于DJC的回答,调度抖动对我的问题的语义域上面会:

调度抖动:时间片的不平等分配给进程由系统调度程序发生,这是不必要的。可能出现这种情况的一个例子是:如果要求实时环境中的所有进程每个计划时间使用不超过100毫秒的处理器时间,则需要使用150毫秒时间的进程将导致重要的进程在该实时系统中调度抖动

+0

谢谢。关键的想法很清楚,我只是不知道如何为你的域名制定它(因为我不太熟悉它)。 – djc 2009-08-26 18:30:28

8

抖动是给定任务的后续时间段之间的差异。在实时操作系统中,将抖动降低至应用程序的可接受水平非常重要。这是抖动的图片。在实时操作系统

Jitter

1

调度抖动不是过程大约不同的时间段。抖动是与理想的定时事件有差异的偏差。调度抖动是启动任务的时间与任务开始时的时间 之间的延迟。例如考虑一个任务应该在10ms之后开始,但是无论出于何种原因,它在15ms之后开始。在我们的例子中,抖动是5ms!

0

简单的抖动意味着延迟操作系统的概念。调度抖动表示实际相对起始时间与标称值的差值。

点系统定时器发生的唤醒周期任务

5

调度抖动的第一条指令的执行点,预计对计划执行期间

这个概念在时间上的最大变化是非常重要的实时仿真系统。我的经验来自实时模拟行业超过30年(主要是飞行模拟)。理想情况下,绝对不需要抖动,这正是硬实时调度的目标。

假设例如实时仿真需要以400Hz执行某个计算机程序,以便对该子系统产生稳定和准确的仿真。这意味着我们需要期望系统每2.5毫秒执行一次程序。要在硬实时系统中实现这一点,需要使用高分辨率时钟将该模块调度为高优先级,以便抖动几乎为零。如果这是一个软实时模拟,则会出现一些较高的抖动量。如果调度抖动为0.1毫秒,则该程序的起点每隔2.5毫秒+/- 0.1毫秒(或更少)。只要永远不会超过2.3毫秒来执行程序,这是可以接受的。否则,该计划可能会“超支”。如果这种情况发生,那么决定论就会失去,模拟失去保真度。

+1

为了使这个问题更容易遵循,你可能会稍微编辑一下,以便首先解释什么时间安排抖动实际上是_is_,然后_then_解释为什么它很重要?正如你现在写的那样,这个解释究竟隐藏了多少。 – 2015-12-04 01:02:04