[发明专利]一种进程间通讯的方法及装置在审
申请号: | 201611069320.8 | 申请日: | 2016-11-29 |
公开(公告)号: | CN106648928A | 公开(公告)日: | 2017-05-10 |
发明(设计)人: | 朱晨 | 申请(专利权)人: | 成都广达新网科技股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 成都九鼎天元知识产权代理有限公司51214 | 代理人: | 徐静 |
地址: | 610041 四川省成都市高新区*** | 国省代码: | 四川;51 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 进程 通讯 方法 装置 | ||
1.一种进程间通讯的方法,其特征在于包括:
通讯拓扑建立步骤,设置n个进程,每个进程静态设置唯一标识的进程ID;选择一个进程作为通讯拓扑中SERVER端;其余n-1个进程分别对应作为n-1个CLIENT端;n个进程创建基于流的UNIX域套接字并绑定自身的SOCK PATH标识,SERVER端进入侦听并接受CLIENT端发起的连接,CLIENT端周期性向SERVER端发起连接直到连接建立为止;SERVER端靠接受连接时获取对端的CLIENT端的SOCK PATH标识识别出对端的CLIENT端进程ID;SERVER和CLIENT端都为自己保存已连接进程记录;
其中进程间通讯采用远程过程调用(RPC)的形式:
基于通讯拓扑建立步骤建立的通信拓扑,任意一个进程可以作为源进程发送请求消息,期望应答的目的进程是除源进程以外的任意进程;目的进程接收到请求消息后执行请求回调函数完成本次请求的响应,然后根据请求消息中的应答标志位,可选的向源进程发送应答消息从而完成一次会话;
上层软件在源进程发送请求时要指定:目的进程ID、操作码、超时参数、发送的消息体、请求类型,若是同步请求还要指定承载应答消息的BUFFER,若是异步请求要可选的给出应答处理回调函数和回调参数;当异步请求不指定应答处理回调函数时,应答属性就是无需应答,否则就是需要应答,所有的同步请求应答属性都是需要应答;上层软件在设计时如果期望某个进程响应某种请求操作码,就要提前在该进程内注册该操作码对应的请求回调函数;请求类型指的是同步请求或者异步请求。
2.根据权利要求1所述的一种进程间通讯的方法,其特征在于请求回调函数和应答处理回调函数返回值和参数如下:
请求回调函数由上层软件定,用于在一个进程内响应某种操作码对应的请求,在一个进程中,一个操作码对应一个请求回调函数,函数返回值0表示执行成功,非0表示相应的错误;请求回调函数的入参包括:请求源进程ID、操作码、请求消息载荷指针、请求消息载荷长度;出参包括:应答载荷指针、应答载荷长度。
应答处理回调函数由上层软件在异步发送需要应答的请求时指定,用于异步处理应答消息;函数无返回值,入参包括:请求目的进程ID、操作码、应答错误码、应答载荷指针、应答载荷长度、上层软件自定义回调参数。
3.根据权利要求1所述的一种进程间通讯的方法,其特征在于进程间传递的消息格式为:消息格式由消息头和消息载荷两部分组成:消息头包括16bit目的进程ID、16bit源进程ID、32bit序列号、16bit操作码、16bit应答错误码、16bit消息长度、1bit类型标志位、1bit应答标志位、14bit保留位;其中类型标志位为0时表示消息类型是请求,为1时表示消息类型是应答;应答标志位仅当类型标志位为0时有意义,为1表示请求消息需要应答,为0表示请求消息不需要应答;应答错误码仅当类型标志位为1时有意义,当类型标志位为0时,应答错误码取值为0;消息长度表示消息头加载荷的整体消息长度;消息载荷部分长度不定,范围是0到65519字节;
源进程在发送需要应答的请求消息前要生成本地会话记录:
本地会话记录用于记录和描述一次尚未完成的会话,以请求消息的源进程ID加会话序列号为主键存储在请求消息发送的源进程;本地会话记录的内容包括:目的进程ID、源进程ID、会话序列号、操作码、会话类型、超时参数、同步会话参数、异步会话参数;会话序列号对源进程而言用于唯一标识一个会话,取值正整数,源进程每发送一次请求,序列号连续递增;同步会话参数仅对同步会话类型有意义,参数包括线程同步信号量、应答错误码、应答消息BUFFER、应答消息长度;异步会话参数仅对异步会话类型有意义,参数包括应答处理回调函数和回调参数。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于成都广达新网科技股份有限公司,未经成都广达新网科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611069320.8/1.html,转载请声明来源钻瓜专利网。
- 上一篇:异常信息收集方法及服务器
- 下一篇:一种开关系统及开关模式实现方法