当前位置: 代码迷 >> VxWorks >> 讨论,共享内存,vxworks解决方法
  详细解决方案

讨论,共享内存,vxworks解决方法

热度:6538   发布时间:2013-02-26 00:00:00.0
讨论,共享内存,vxworks
中断和任务之间有大量数据传递,用共享内存效率高
高手来说说一般是怎么做的?
首先是内存开辟,
其次是临界区的保护
能大概说一下吗

------解决方案--------------------------------------------------------
VxWorks系统,基本可以看做是单进程,多线程模式,所有内存地址均可见。所以我们可以不采用系统提供的共享内存组件。

开辟内存,在任务间用任务锁即可实现。
------解决方案--------------------------------------------------------
如果是从中断接收数据,开块内存,用二值信号量做同步或者消息传递都可以吧。
------解决方案--------------------------------------------------------
用全局变量或静态变量,共享内存的大小毕竟是有限,所以可以用固定大小的内存
注意临界区的保护就可以了
------解决方案--------------------------------------------------------
全局变量
------解决方案--------------------------------------------------------
中断里面最好不要处理数据,可以使用一个同步信号量,中断里释放,然后任务里面去读数据
  相关解决方案