[发明专利]一种KUX系统下基于数据管道的进程间通讯的实现方法在审
申请号: | 201410686530.6 | 申请日: | 2014-11-26 |
公开(公告)号: | CN104375900A | 公开(公告)日: | 2015-02-25 |
发明(设计)人: | 吴丹宇 | 申请(专利权)人: | 浪潮电子信息产业股份有限公司 |
主分类号: | G06F9/54 | 分类号: | G06F9/54 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜明 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 kux 系统 基于 数据 管道 进程 通讯 实现 方法 | ||
技术领域
本发明涉及UNIX以及KUX的操作系统领域中的进程间通讯方式,在 KUX 应用开发中会遇到进程间通讯的需求,进程间通讯的方法有很多,例如通过共享内存、信号量、内存映射文件、数据管道、文件、Socket 等等。这里介绍的一种通过数据管道和系统标准输入输出文件描述符相结合的方式来实现进程间通讯和数据交互。
背景技术
匿名管道:管道是进程间协同工作的一种方式,单独构成一种独立的文件系统,管道是半双工的。而匿名管道数据只能向一个方向流动,双方通信时,需要建立起两个管道;只能用于父子进程或者兄弟进程之间(具有亲缘关系的进程)。
文件指针与管道:当我们要读写一个文件,需要用到文件指针,它是一个指向结构体的指针。我们对管道进行读写操作时也需要用到文件指针,通过文件指针来对管道一端进行写,而另一端的进程则通过文件指针进行读。如果文件指针指向的是标准输入,那么该进程则是从标准输入中读取数据,通过匿名管道实现进程间通讯:通信场景如下:现在有两个进程 A、进程 B(是进程 A 的子进程),进程 A 从数据库中读取一条待处理数据 M,数据 M 中存储了进程 A 需要调用的可执行程序名称及需要传递给可执行程序的参数。参数很多,并且参数长度及个数以及类型都是变化的。
发明内容
本文利用文件指针进行匿名管道的读写操作,不采取参数传递方法,而采用了匿名管道进程间通信方法。
对于本发明,使用了匿名管道方式,来实现进程间的通讯。通过数据管道和系统标准输入输出文件描述符相结合的方式来实现进程间通讯和数据交互。
本发明提供一种KUX系统下基于数据管道的进程间通讯的实现方法,解决KUX系统下具有亲缘关系的进程之间的通信的实现方法。主要分为以下五个模块:进程管理模块(1)、数据管道模块(2)、通讯控制模块(3)、文件管理模块(4)、异常处理模块(5)。
进程管理模块(1)是通讯实现方法的进程管理模块,其主要目的是对通讯前提进行定义,比如两个进程间通讯的相关性。
数据管道模块(2)是通讯实现方法的核心模块,其主要目的是通过匿名管道通讯实现数据传递和通讯的管道设置。
通讯控制模块(3)是对整体通讯方法的控制模块,其主要目的是对通讯中的进程、传递方式、通讯模式等进行有效的管理。
文件管理模块(4)是对通讯内容的一个管理模块,其主要目的是对数据传递的内容进行有效的管理。
异常处理模块(5)是进程通讯方法中出现的异常进行处理的模块,其主要目的是对异常通信情况进行分析和处理。
进程通讯的步骤如下:
第一步、调用进程管理模块对需要通讯的进程进行管理和调度,实现对具有亲缘关系的进程有效的管理。
第二步、通讯控制模块通过调用数据管道模块,来进行通讯方式和传递方式的管理和调度,这里的数据管道的选择也是通过通讯控制模块来进行管理的。
第三步、文件管理模块根据进程需要通讯的数据进行文件化处理,实现系统间通信的标准输入输出文件的设置。
第四步、进程间进行通讯,以及数据传递。期间调用异常处理模块,对进程通讯过程中出现的异常情况进行有效的分析和管理。
第五步、通讯结束,关闭所有方法模块。
本发明有益的效果是:通过基于数据管道在KUX进程通讯的实现方法,实现了通过数据管道和系统标准输入输出文件描述符相结合的方式来实现进程间通讯和数据交互的进程通讯方式,可以对KUX中的具有亲缘关系的进程进行有效的通讯和数据文件的有效传递。通过基于数据管道的技术,提高了数据在传递中的安全性和准确性,对于进程间的通讯模式,也是一个颠覆性的创新。除此之外,本发明在实现过程中采用了模块化的设计思想,对功能进行了有效的拆分,提高了通讯方法在以后的功能可扩展性。对于本发明,重点对进程通讯过程中的异常分析和处理也做了相应的解决方案,可以对出现的异常进行有效的分析和处理,在KUX进程通讯方面,具有非常广阔的方展前景。
附图说明
附图1 数据管道通信原理图。
附图2 进行通讯方法的工作流程图。
具体实施方式
下面参照附图,对本发明的内容以一个具体实例来描述实现这一体系结构的过程。
正如发明内容中所描述的,通过基于数据管道在KUX进程通讯的实现方法,主要有进程管理模块(1)、数据管道模块(2)、通讯控制模块(3)、文件管理模块(4)、异常处理模块(5)五个模块构成。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮电子信息产业股份有限公司,未经浪潮电子信息产业股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410686530.6/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置