[发明专利]一种基于IPC动态维护技术的面向对象用电信息采集终端有效
申请号: | 201710850247.6 | 申请日: | 2017-09-19 |
公开(公告)号: | CN107656826B | 公开(公告)日: | 2020-06-26 |
发明(设计)人: | 张翔;汪志远;李源;刘青;侯沛景 | 申请(专利权)人: | 光一科技股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 北京德崇智捷知识产权代理有限公司 11467 | 代理人: | 卫麟 |
地址: | 211103 江苏*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 ipc 动态 维护 技术 面向 对象 用电 信息 采集 终端 | ||
一种基于IPC动态维护技术的面向对象用电信息采集终端,在全局存储空间内建立IPC公告板,所述IPC公告板内存储每一个线程或进程的IPC公告信息,具体包括每一个进程或线程的任务名、PID标识、消息接收槽、消息数以及待处理消息数。在发送或接收到消息时,各线程或进程通过自己的消息管理器对象查询或更新相应的IPC公告信息。由此,通过本发明,用电信息采集终端内各进程或线程均可获知接收其消息的进程或线程的状态,并根据IPC公告信息进行进程/线程间的消息交互。本发明可有效避免进程/线程间消息交互过程中出现的错误,减少维护工作量,提高进程/线程间消息交互的效率。
技术领域
本发明涉及进程间通信控制技术,尤其涉及一种针对Linux系统的进程间通信(IPC)动态维护技术。
背景技术
进程间通信(IPC)接口主要用于应用程序、平台内建服务之间交换信息,或者请求服务提供者执行特定的工作。应用于嵌入式Linux操作系统时,由于Linux操作系统下,执行程序可剪裁,消息发送线程无法获知消息接收进程或线程是否存在,因而时常会出现死机。
目前,进程间通信技术主要存在四种实现方式:管道、TCP、消息队列和UDP。其中,管道和TCP方式要求进程间通信的建立者始终存在,一旦进程间通信的建立者退出则需要通信消息接收进程或线程进行大量的工作。这两种方式下,需要通过信号量实现进程间同步保护,需要申请内存作为通信双方的共享内存,且要求通信双方同步并维护大量的内存ID和信号量。管道和TCP方式维护要求较高,且每时刻只允许一方访问信号量数据,无法进行多进程/线程间的交互。
相对前两种方式,消息队列和UDP方式不要求通信消息接收进程或线程一定存在,更易维护。其中,消息队列由操作系统内建,响应时间更短更高效,可选择阻塞或非阻塞方式进行发送和接收;但其阻塞时无法超时,不能多路复用,崩溃时清理困难,通信消息接收进程或线程崩溃时无法被感知。而UDP方式同样由操作系统内建,可选择柱塞或非柱塞方式进行发送和接收,且这种方式可实现多路复用,接收时可设置超时,崩溃时无需清理;然而,其缺陷在于:相对于消息队列方式,UDP方式效率较低,且同样的,通信消息接收进程或线程崩溃时无法被感知。
然而,现有的IPC技术,在Linux系统环境下存在以下难题:
1)对于消息发送进程或线程来说,其无法确认消息接收进程或线程是否存在。整个终端的执行程序是可裁剪的,有些进程或线程被裁剪而不存在,或者存在但由于某种异常该进程或线程被锁死。但无论哪种情况,消息发送进程或线程都无法获知消息接收进程或线程的状态。
2)对于消息接收进程或线程来说,其无法获知消息发送进程或线程的信息。
3)对于消息发送进程或线程和消息接收进程或线程来说,他们都需要在消息发送前知道消息接收的运行状态。
4)对于消息接收进程或线程来说,如果其进程或线程退出(如临时任务),无法保证消息发送进程或线程为其他请求者提供的服务不受影响。
因此,目前急需一种针对Linux系统的进程间通信(IPC)技术,能够及时获知进程或线程的运行状态,并进行相应维护。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种针对Linux系统的进程/线程间通信动态维护方法、通信方法及使用该方法的用电信息采集终端。
首先,为实现上述目的,提出一种针对Linux系统的进程/线程间通信动态维护方法,包括以下步骤:
第一步,每个进程或线程启动或重启,获得所述Linux系统随机分配的PID标识后,生成该进程或线程的IPC公告信息,全局注册所述IPC公告信息;
第二步,各进程或线程发送消息时,先查询所述IPC公告信息,获取接收该消息的进程或线程的IPC公告信息;按照接收该消息的进程或线程的IPC公告信息组帧并发送所述消息,更新所述IPC公告信息;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于光一科技股份有限公司,未经光一科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710850247.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:消息处理方法、装置及系统
- 下一篇:一种进程间通信方法及系统