[发明专利]跨异构操作系统的一种I/O密集型协同交互仿真方法有效
申请号: | 201210396368.5 | 申请日: | 2012-10-18 |
公开(公告)号: | CN103777992B | 公开(公告)日: | 2017-02-22 |
发明(设计)人: | 铁鸣;吴旭生;王玲;刘璟;丁雪 | 申请(专利权)人: | 北京临近空间飞行器系统工程研究所;中国运载火箭技术研究院 |
主分类号: | G06F9/455 | 分类号: | G06F9/455;G06F9/45 |
代理公司: | 核工业专利中心11007 | 代理人: | 高尚梅 |
地址: | 100076 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 跨异构 操作系统 一种 密集型 协同 交互 仿真 方法 | ||
1.跨异构操作系统的一种I/O密集型协同交互仿真方法,其特征在于,包括以下步骤:
⑴确定跨异构操作系统协同仿真交互中的开发环境:
使用通用的高级语言,并编写程序;对原有的开发代码进行检验,检验原有代码是否使用C/C++语言的标准;跨操作系统的协同交互程序使用标准库;
⑵确定协同仿真交互运行的源码库:
编译器将程序源代码翻译成可执行的代码;在Windows系统下编译器选用VC++,Linux系统下编译器选用G++;对协同交互仿真对象在Linux环境下采用G++和跨平台编译工具Cmake,通过编写cmake编译文件CMakeLists.txt生成相应的静态链接库和可执行文件;
⑶确定协同仿真交互运行的应用开发接口API:
在协同仿真交互运行体系中,协同支撑软件本地代理进程RTIA与协同支撑软件网关RTI Gateway都涉及到对于系统进程的操作,针对在Linux环境下与Windows环境下不同的操作系统接口调用的形式,涉及到的Windows应用开发接口API改用Linux下的应用开发接口API;
⑷信息协同交互步骤:
获取交互信息集合,获取集合中的交互信息,声明输出交互信息,声明输入交互信息,更新交互信息,进行异步传输,请求协同推进,接受所有成员一致请求后,开始协同推进;
⑸在Linux操作系统中,安装、配置协同交互仿真环境:
先后安装以下程序:c语言编译环境、跨平台编译工具cmake、编译器代码生成器yacc、xml C语言解析器libxml2;
⑹编写CMakeLists.txt:
对每一个子文件夹下相应的cmake编译文件CMakeLists.txt进行编写,然后进入其所在的目录后执行cmake编译工具程序,得到编译制定规则Makefile并进行编译;
⑺工程编译成功之后,将提供协同交互服务的支撑软件中的可执行文件到usr/bin目录下,使得能够在Linux下被成功调用;
⑻构建InfiniBand高速网体系作为协同交互仿真的网络环境:
InfiniBand高速网体系的整体结构由如下几部分组成:InfiniBand交换机、InfiniBand主机通道适配器、InfiniBand目标通道适配器、路由器;InfiniBand的物理层根据网络介质(铜线或光纤)的类型把该包转换成电信号或光信号进行传输;
⑼用IP网和IB网结合的IPoIB体系控制跨操作系统协同交互仿真软件在InfiniBand体系下运行:
在TCP/IP包外包一层InfiniBand协议的包,在InfiniBand子网内部,每个节点都经过TCP/IP的打包后,再在外面包装一层InfiniBand协议的包,在运行InfiniBand的子网内部之间传递;当子网内数据包通过接口机时,把InfiniBand部分卸载后送出,从子网外部进来的以太网数据包进入接口机时,在外面加入InfiniBand协议部分;
⑽基于InfiniBand体系的跨操作系统I/O密集型协同交互的通信方法:
本地进程RTIA位于跨操作系统的协同交互仿真节点和RTI Gateway之间,监听和管理两者之间的消息传递,对联邦成员的请求和交互数据进行处理和过滤,通过网络链接把请求发往服务器RTI Gateway;
在RTIA与成员程序以及RTI Gateway服务器之间采用Socket网络通信模式,通过IPoIB协议,把在不同节点上的成员连接起来。在Windows 2008 Server环境下的联邦成员,通过调用Windows套接字应用开发接口Windows Socket API调用TCP/IP协议,然后经过IPoIB协议通过InfiniBand与其他成员通信;在linuxServer环境下的联邦成员,通过调用linux套接字应用开发接口linux Socket API套接字应用开发接口,调用TCP/IP协议,然后经过IPoIB协议通过InfiniBand与其他成员通信;
⑾基于InfiniBand体系的跨操作系统协同交互流程:
成员向本地RTIA传递服务消息,本地RTIA通过Windows(linux)Socket API利用TCP/IP协议进行通信,IP报文通过IPoIB协议加上InfiniBand包头封转为InfiniBand报文,InfiniBand报文通过InfiniBand链路进行通信传递到RTIGateway服务器,InfiniBand报文通过IPoIB协议将其转换为IP报文,RTIGateway服务器通过Windows(linux)Socket API解读报文消息并处理。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京临近空间飞行器系统工程研究所;中国运载火箭技术研究院,未经北京临近空间飞行器系统工程研究所;中国运载火箭技术研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210396368.5/1.html,转载请声明来源钻瓜专利网。