vxworks中循环链表是什么

这篇文章主要为大家展示了“vxworks中循环链表是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vxworks中循环链表是什么”这篇文章吧。

循环链表

vxworks中循环链表是什么

VxWorks称之为Ring Buffer,看来也可以叫环形缓冲

与双向链表一样:这个结构内部没有同步或互斥机制。多任务访问同一链表时,要注意互斥保护,例如使用"互斥信号量"。

VxWorks封装了以下函数

vxworks中循环链表是什么

写个例子,把它们挨个调用一遍

vxworks中循环链表是什么

可以看到,这个链表内的空间是循环使用的:链表满了以后,读出旧数据,就可以写入新数据,只要读的够快,就可以一直写入。很多数据管理系统会用到这种思想,而且做了改进。例如公众号VxWorks567的行车记录仪,当SD卡满了的时候,不用读出已有录像,也可以写入新录像,这样方便了用户的操作,但无法保证数据的完整有效。

还有一点,与双向链表不太一样:VxWorks这个循环链表内部有两个指针:一个读,一个写。单核模式下,它俩互不干扰。所以只有两个分别进行读写的任务时,是不用加互斥保护的

这正是:

基本结构环形表,循环使用空间小。

以上是“vxworks中循环链表是什么”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!

原创文章,作者:1402239773,如若转载,请注明出处:https://blog.ytso.com/229963.html

(0)
上一篇 2022年1月14日
下一篇 2022年1月14日

相关推荐

发表回复

登录后才能评论