首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当程序的计时器小于4ms时,Linux上的抢占是如何工作的?

当程序的计时器小于4ms时,Linux上的抢占是如何工作的?
EN

Unix & Linux用户
提问于 2012-11-09 09:17:52
回答 1查看 6K关注 0票数 7

大多数Linux系统中的Jiffies默认为250 (4ms)。问题是,当一个程序有一个小于4ms的us休眠()时,会发生什么?当然,当它被安排的时候,它的工作也是一样的。但是,当linux调度程序取出这个程序等待,因为另一个程序必须运行时会发生什么呢?在这种情况下,先发制人是如何工作的?

我是否应该避免使用如此小的等待量来定制程序?他们不可能是准确的,对吗?

EN

回答 1

Unix & Linux用户

发布于 2012-11-09 11:36:17

除非您运行的是实时内核,否则我不会使用睡眠时间<10 use。即使调度程序愿意抢占您超时的另一个进程,抖动可能会主导您的实际睡眠时间。

摘要:除非您有一个实时内核,否则避免这样小的间隔。如果您不能更改内核,您最好的选择可能是将您的进程用SCHED_FIFO和繁忙的专用CPU来处理--等待(或做其他有用的工作)少于两个jiffies。

不知怎么的总结比原来的要长..。哦,好吧。

票数 3
EN
页面原文内容由Unix & Linux提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://unix.stackexchange.com/questions/55266

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档