VxWorks里常用的定时/延时机制有哪些

发布时间:2021-12-22 10:55:21 作者:小新
来源:亿速云 阅读:427

这篇文章主要介绍VxWorks里常用的定时/延时机制有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

VxWorks里常用的定时/延时机制

taskDelay()

VxWorks里常用的定时/延时机制有哪些

sleep()/nanosleep()

VxWorks里常用的定时/延时机制有哪些

这俩是POSIX标准的函数,也是延时操作,将当前任务移到延时队列,其底层就是调用的taskDelay(),即其精度也是取决于系统时钟。与taskDelay()的不同是

VxWorks里常用的定时/延时机制有哪些

可以看到,sleep 1秒的话,结果是1秒加1个tick,这样就防止了taskDelay()的那个小于1个tick的误差

nanosleep()也是这样操作的:

VxWorks里常用的定时/延时机制有哪些

当系统时钟每个tick是1毫秒时,nanosleep()1个纳秒的话,其实是:向上取整为1毫秒(基数是tick的1毫秒)再加1个tick(1毫秒),即2毫秒。而nanosleep()略大于1毫秒(例如1000001)时,其实是:向上取整(2毫秒)再加1个tick(1毫秒),即3毫秒

WatchDog

其定时精度也是取决于系统时钟,但与taskDelay() / sleep() /nanosleep()的区别是:WatchDog定时后的操作是以中断形式执行的,不会受到其它高优先级任务的干扰

Auxiliary Clock

定时精度可以远高于WatchDog,而且定时是周期性的

Timestamp

定时精度最高,可以到纳秒,但多数板子里只支持轮询模式

以上是“VxWorks里常用的定时/延时机制有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. VxWorks面临严重RCE攻击风险有哪些
  2. VxWorks系统里如何创建任务

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

vxworks

上一篇:vxworks中printf的格式化输出与转义字符是什么

下一篇:Utility中用来定时的函数有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》