基于客户机服务器模型的多进程通信方法技术

技术编号:28131904 阅读:45 留言:0更新日期:2021-04-19 11:55
本发明专利技术公开了一种基于客户机服务器模型的多进程通信方法,包括步骤:(1)确认需要进行通信的进程,给各进程预定义分配服务ID;(2)各进程调用消息注册接口,创建一个消息管理器对象,并与服务ID绑定;(3)各进程创建消息处理循环,定时接收消息,并应答回复;(4)各进程可以在程序执行的任意时刻,调用消息发送接口,向目标服务ID发送消息,实现进程间通信。本发明专利技术实现多个进程之间,支持一对一或一对多或多对多的双向通信,并且支持多进程间的同步或异步通信。本发明专利技术发送/接收消息接口是基于客户机服务器模型,在socket通信基础上封装设计的,具备操作系统内建,可阻塞/非阻塞发送和接收,可多路复用,接收时可设置超时等优点。接收时可设置超时等优点。接收时可设置超时等优点。

【技术实现步骤摘要】
基于客户机服务器模型的多进程通信方法


[0001]本专利技术属于嵌入式终端操作系统进程通信领域,尤其涉及一种基于客户机服务器模型的多进程通信方法。

技术介绍

[0002]进程是操作系统的概念,每当执行一个程序时,对于操作系统来讲就创建了一个进程,在这个过程中,伴随着资源的分配和释放,可以认为进程是一个程序的一次执行过程。
[0003]进程用户空间是相互独立的,一般而言是不能相互访问的。但很多情况下进程间需要互相通信,来完成系统的某项功能。进程通过与内核及其它进程之间的互相通信来协调它们的行为。一般进程间通信,有以下几种应用场景:(1)数据传输:一个进程需要将它的数据发送给另一个进程,发送的数据量在一个字节到几兆字节之间;(2)共享数据:多个进程想要操作共享数据,一个进程对共享数据的修改,别的进程应该立刻看到;(3)通知事件:一个进程需要向另一个或一组进程发送消息,通知它(它们)发生了某种事件(如进程终止时要通知父进程);(4)资源共享:多个进程之间共享同样的资源。为了作到这一点,需要内核提供锁和同步机制;(5)进程控制:有些进程希望完全本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于客户机服务器模型的多进程通信方法,其特征在于,包括步骤:(1)确认需要进行通信的进程,给各进程预定义分配服务ID;(2)各进程调用消息注册接口,创建一个消息管理器对象,并与服务ID绑定;(3)各进程创建消息处理循环,定时接收消息,并应答回复;(4)各进程可以在程序执行的任意时刻,调用消息发送接口,向目标服务ID发送消息,实现进程间通信。2.根据权利要求1所述的基于客户机服务器模型的多进程通信方法,其特征在于,一个进程可以有多个消息处理循环,则分配多个服务ID,并进行多次注册。3.根据权利要求1所述的基于客户机服务器模型的多进程通信方法,其特征在于,消息注册接口包括消息管理器对象、消息槽、消息管理类;消息槽包括消息缓冲区、服务ID、消息序号、socket侦听端口;消息管理类包括一个消息公告板,消息公告板具有锁保护。4.根据权利要求3所述的基于客户机服务器模型的多进程通信方法,其特征在于,消息注册流程包括:(2.1)调用消息管理类判断服务ID是否已经注册;(2.2)如未注册,则获取消息公告板的锁;(2.3)在消息公告板中添加服务ID的消息公告信息;(2.4)释放消息公告板的锁;(2.5)在消息管理类中添加服务ID的消息槽信息。5.根据权利要求1所述的基于客户机服务器模型的多进...

【专利技术属性】
技术研发人员:李祖新李小青蔡松勇
申请(专利权)人:南京海兴电网技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1