如何创建低影响计时器

时间:2012-07-03 19:16:16

标签: c++ python c shell timer

我想创建一个在嵌入式系统上运行的计时器,其影响尽可能小。我可以选择用C,C ++,bash或python实现计时器。计时器中的错误可能是+/-几秒钟。

我很想尝试使用'sleep()'命令和'&'在bash脚本中创建一个循环在后台启动它。但是我担心/不太明白,如果以这种方式实现,这是否会使系统保持活动/清醒。

如果它保持系统处于活动状态/唤醒状态,是否可以使用C,C ++,python或者使用bash脚本的其他方式创建一个不执行此操作的计时器?

2 个答案:

答案 0 :(得分:1)

您可以通过多种不同方式进行计时器。

最简单的就是

date "+%s"

打印出系统的时间戳。如果系统时钟足够,那么获得两个时间戳,一个在开始时,第二个在结尾,你可以通过找到这两个时间戳的差异来找到经过的时间。

在每种语言(C,C ++,Python等)上都有相同的方法可以做到这一点。

如果您计划结束的过程,您可以执行类似

的操作
TIC=$(date "+%s")
./some-script
TOC=$(date "+%s")
DELTA=$((TOC - TIC))
echo $DELTA

alternatively in Python

无论如何,我不认为你的睡眠想法是最好的方法。

答案 1 :(得分:1)

如果您担心嵌入式系统中的系统资源或功耗问题,您一定要使用RTC来实现计时器。

请参阅http://linux.die.net/man/4/rtc

然后,查看您正在使用的操作系统的用户手册。也许存在一些可以调用的函数。

没有必要重新发明与计时器相关的功能。