如果你在vxWorks中被抢占了,你的时间片会发生什么?

时间:2008-09-18 01:01:30

标签: vxworks

如果您在Vxworks中启用了循环,并且您的任务被更高优先级的任务抢占,剩下的时间片会发生什么?

1 个答案:

答案 0 :(得分:3)

您的任务将恢复执行并完成剩余的时间片。

请注意,由于时间切片的粒度为1个时钟周期,因此您将发生一次性抖动。

例如:
您使用10个时钟滴答时间片启用了循环法。一个时钟滴答是10毫秒。您希望每个时间片100毫秒 你会在5毫秒(第一个勾号中间)被抢先一步。你应该再运行95ms,但VxWorks认为你还有10个标记。

如果任务以11ms的速度恢复cpu,你将执行99ms以上 如果任务以19ms的速度恢复cpu,你将执行91ms以上。

每当你被抢占时,你的任务可能会在绝对时间内执行+/- 1刻度。