首页 文章

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

提问于
浏览
2

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

1 回答

  • 3

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

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

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

    如果任务以11ms的速度恢复cpu,则会执行99ms以上 .
    如果任务以19ms的速度恢复cpu,则会执行91ms以上 .

    每当你被抢占时,你的任务可能会在绝对时间内执行/ - 1滴答 .

相关问题