[发明专利]一种基于共享内存的进程间功能调用方法及装置在审
申请号: | 201710708007.2 | 申请日: | 2017-08-17 |
公开(公告)号: | CN107491355A | 公开(公告)日: | 2017-12-19 |
发明(设计)人: | 解双福 | 申请(专利权)人: | 山东浪潮商用系统有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54;G06F9/50 |
代理公司: | 济南信达专利事务所有限公司37100 | 代理人: | 李世喆 |
地址: | 250100 山东省济南市*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 共享 内存 进程 功能 调用 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种基于共享内存的进程间功能调用方法及装置。
背景技术
进程是系统进行资源分配和调度的基本单位,各个进程之间的在运行时,需要利用其它进程的某些功能,因此进程间的功能调用十分重要。
目前,各个进程在运行前,一般在不同的服务端进行注册。在进程运行期间进行功能调用时,需要从待调用进程对应的服务端获取相应的注册信息,根据获取的注册信息,再对待调用进程的相关功能进行调用。
在此过程中,需要从不同服务端获取待调用进程的注册信息,即有大量的进程间信息进行传递,这导致系统的性能消耗较大。
发明内容
本发明实施例提供了一种基于共享内存的进程间功能调用方法及装置,能降低系统的性能消耗。
第一方面,本发明实施例提供了一种基于共享内存的进程间功能调用方法,包括:
预先设置服务进程和客户端进程;
启动所述服务进程,并利用启动的所述服务进程,创建共享内存;
利用所述服务进程中的监控线程监控所述共享内存;
接收数据处理请求,所述数据处理请求中携带有待处理数据以及待调用处理函数的标识信息;
利用所述客户端进程将所述待处理数据存入所述共享内存;
当所述监控线程监控到所述共享内存中有数据存入时,调用与所述标识信息相对应的目标函数;
利用调用的所述目标函数,对所述共享内存中存储的所述待处理数据进行处理,并输出处理后的数据。
优选地,
在所述启动所述服务进程,利用启动的所述服务进程,创建共享内存之后,进一步包括:
利用所述服务进程,在所述共享内存中初始化存入信号量和导出信号量,并将所述共享内存分为写入内存和输出内存;其中,所述存入信号量与所述写入内存相对应,所述导出信号量与所述输出内存相对应;
所述利用所述客户端进程将所述待处理数据存入所述共享内存,包括:
当接收到所述数据处理请求时,打开所述存入信号量,并利用所述客户端进程将所述待处理数据存入所述写入内存;
所述当所述监控线程监控到所述共享内存中有数据存入时,调用与所述标识信息相对应的目标函数,包括:
当所述监控线程监控到所述写入内存有数据存入时,读取所述写入内存中的所述待处理数据,并调用所述目标函数;
所述利用调用的所述目标函数,对所述共享内存中存储的所述待处理数据进行处理,并输出处理后的数据,包括:
在所述写入内存中,利用所述目标函数对所述待处理数据进行处理;
打开所述导出信号量,利用所述监控线程将所述处理后的数据写入所述输出内存。
优选地,
所述利用所述客户端进程将所述待处理数据存入所述写入内存,包括:
利用所述客户端进程将所述待处理数据进行序列化,并将序列化后的所述待处理数据写入所述写入内存;
所述当所述监控线程监控到所述写入内存有数据存入时,读取所述写入内存中的所述待处理数据,并调用所述目标函数,包括:
利用所述监控线程对读取的所述待处理数据进行反序列化,并调用所述目标函数;
所述利用所述监控线程将所述处理后的数据写入所述输出内存,包括:
利用所述监控线程将所述处理后的数据进行序列化,并将序列化后的所述处理后的数据写入所述输出内存。
优选地,
在所述利用所述客户端进程将所述待处理数据存入所述写入内存之前,进一步包括:
利用所述服务进程中的网络线程监听传输控制协议;
当所述网络线程监听到所述数据处理请求通过所述传输控制协议进行传输时,利用所述网络线程接收所述数据处理请求,并执行所述利用所述客户端进程将所述待处理数据存入所述写入内存。
优选地,
在所述利用所述监控线程将所述处理后的数据写入所述输出内存之后,进一步包括:
利用所述网络线程将所述输出内存中的所述处理后的数据经所述传输控制协议进行输出,并执行所述利用所述网络线程监听传输控制协议。
优选地,
进一步包括:设置消息广播进程;
在所述利用启动的所述服务进程,创建共享内存之后,进一步包括:
确定所述服务进程对应的至少一个消息监听线程;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于山东浪潮商用系统有限公司,未经山东浪潮商用系统有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710708007.2/2.html,转载请声明来源钻瓜专利网。