[发明专利]基于消息机制的实时进程与非实时进程间的数据交互方法无效
申请号: | 201210053879.7 | 申请日: | 2012-03-03 |
公开(公告)号: | CN102662771A | 公开(公告)日: | 2012-09-12 |
发明(设计)人: | 许志 | 申请(专利权)人: | 西北工业大学 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 西北工业大学专利中心 61204 | 代理人: | 王鲜凯 |
地址: | 710072 *** | 国省代码: | 陕西;61 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 消息 机制 实时 进程 数据 交互 方法 | ||
技术领域
本发明涉及一种基于消息机制的实时进程与非实时进程间的数据交互方法,用于计算机操作系统实时进程与非实时进程间的数据交互方法,用于计算机实时计算和实时仿真。
背景技术
实时操作系统由于具有确定的中断响应和线程优先级,因此主要用于在计算机实时计算和实时仿真,但由于其结构简单,人机交互能力较差,因此目前普遍将其作为实时调度内核,而采用Windows系统完成人机交互。
现有的实时进程与非实时进程的数据交互,通常采用在计算机内存开辟一块存储空间,能够被双方进程读写的共享内存机制,实时进程每计算一次,将计算结果保存在内存中,而非实时进程在进行界面显示与处理时,设置一个定时器,定时在共享内存中取数据,完成人机交互。这种方法虽然易于实现,但是需要两个进程对一块内存区频繁进行读写操作,同时计算和仿真数据可能丢失,对结果分析产生影响,此外,这种方式不能够灵活实现数据交互,开发者必须知道双方的数据约定,因此不能灵活应用。
发明内容
要解决的技术问题
为了避免现有技术的不足之处,本发明提出一种基于消息机制的实时进程与非实时进程间的数据交互方法,已达到能够实时进程和非实时进程间灵活进行数据交互,并且不丢失交互数据。
技术方案
一种基于消息机制的实时进程与非实时进程间的数据交互方法,其特征在于步骤如下:
步骤1:针对进行数据交互的实时进程和非实时进程,设定两个相互独立共享内存消息栈,分别是实时进程发-非实时进程收消息栈和实时进程收-非实时进程发消息栈,所述两个消息栈的数据管理采用数据缓冲和先进后出机制;
步骤2:设置实时进程和非实时进程数据交互的消息类型,实时进程发出-非实时进程接收消息包括仿真计算消息、错误消息、通知显示消息、计算结束消息;非实时进程发出-实时进程接收消息包括仿真计算管理消息,初始参数设置消息;
步骤3:设置共享内存消息栈机制的缓冲区Fpr为实时进程计算频率,Fpc为非实时进程读取频率;
步骤4:实时进程将每步计算数据和触发的错误以消息模式压栈进入实时进程发-非实时进程收共享内存消息栈,同时非实时进程查询实时进程发-非实时进程收共享内存消息栈,当有消息时压栈取出消息进出消息响应,直到消息栈清空为止;
步骤5:非实时进程将控制指令信息以消息模式压栈进入实时进程收-非实时进程发消息栈;同时实时进程查询实时进程收-非实时进程发消息栈,当有消息时压栈取出消息进出消息响应,直到消息栈清空为止。
有益效果
本发明提出的一种基于消息机制的实时进程与非实时进程间的数据交互方法,可以在不影响实时进程实时性和计算数据不丢失条件下,实现在非实时进程中对的实时进程产生的计算和仿真数据进行显示和分析。本发明所有的方法具有较强的通用性,因此可以方便对实时仿真产生的数据进行保存、显示分析和处理。
附图说明
图1:本发明方法流程图
具体实施方式
现结合实施例、附图对本发明作进一步描述:
现需要在Windows计算机上安装RTX(Window嵌入式操作系统)完成实时仿真计算,同时应用Windows友好的人机交互界面实现仿真数据的显示和分析、仿真流程的控制。RTX实时仿真进程周期为10毫秒,每步仿真计算产生的最大数据量为512个字节,而Windows非实时进程界面刷新周期为50毫秒,主要进行仿真流程控制和数据结果的显示和保存。
根据本发明,具体实施过程如下:
1)对任务功能按照运行特性进行正确有效的划分成两部分:非实时部分(Windows进程)和实时部分(RTX进程)。两者数据交互的类型主要包括实时进程的仿真计算结果消息、错误消息、仿真过程通知消息;非实时进程消息主要包括仿真流程控制消息、参数设置消息等;
2)分别建立RTX进程收(Windows进程发)和Windows进程收(RTX进程发)两个共享内存消息堆栈,为保证系统运行的高效性,尽量减少在两种进程之间的同步信号和数据流。将堆栈消息缓冲数设置为128,将消息最大允许数据量设置为512字节;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西北工业大学,未经西北工业大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210053879.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种硫醚二酐的简便制备方法
- 下一篇:一种右旋兰索拉唑合成与纯化的方法