2011-04-06 179 views
1

在Linux API timer_settime中,我们都知道可以使用API​​ timer_settime设置计时器间隔。我们可以设置的最小值是1 ns,但CPU不需要这样做,因为它也取决于CPU的频率。计算最佳计时器间隔(timer_settime)

我想计算一下,并将这个最佳间隔设置为我的计时器(应该是最小的)。

任何想法如何计算?

在此先感谢。

回答

0

考虑到您的应用程序“”的限制,最佳时间间隔为“尽可能长。换句话说,不要经常发射超过需要的时间。

+0

这就是我们需要衡量,以及如何。我们需要将其设置为我们处理器接受的最小允许值。 – kingsmasher1 2011-04-06 06:15:15

+0

你可以得到的最小延迟显然是在一个紧密的循环中调用你的函数,根本不使用定时器API。这个问题似乎是不明确的。 – caf 2011-04-06 06:20:42

+0

你需要什么样的细节/规格?请让我知道,我会清除它。我不知道这很简单,但你不理解它。 – kingsmasher1 2011-04-06 06:37:55

0

你试过“man clock_getres”吗?

另外,不要忘记在调用者和CPU之间有一个内核和一个C库。我认为你真正想知道的是“我可以让我的进程在内核中休眠的最短时间间隔是多少?”我不确定,但这可能取决于内核使用的clocksource(这只与您传递给timer_ *和clock_ *函数的clockid_t稍有关系)。