一种从HPUX平台至KUX平台的C/C应用迁移工具.pdf

上传人:r5 文档编号:4043324 上传时间:2018-08-12 格式:PDF 页数:9 大小:556.88KB
返回 下载 相关 举报
摘要
申请专利号:

CN201510022164.9

申请日:

2015.01.16

公开号:

CN104536799A

公开日:

2015.04.22

当前法律状态:

撤回

有效性:

无权

法律详情:

发明专利申请公布后的视为撤回IPC(主分类):G06F 9/45申请公布日:20150422|||实质审查的生效IPC(主分类):G06F 9/45申请日:20150116|||公开

IPC分类号:

G06F9/45

主分类号:

G06F9/45

申请人:

浪潮电子信息产业股份有限公司

发明人:

康玉琢; 杨治; 文瑞超

地址:

250101山东省济南市高新区浪潮路1036号

优先权:

专利代理机构:

济南信达专利事务所有限公司37100

代理人:

姜明

PDF下载: PDF下载
内容摘要

本发明公开了一种从HP-UX平台至K-UX平台的C/C++应用迁移工具,该工具的结构包括:迁移工具软件架构,该架构基于JAVA语言实现,所述架构包括交互模块、均与交互模块相连接的操作系统差异识别模块、编译器差异识别模块和修改建议模块,操作系统差异识别模块、编译器差异识别模块均连接上述修改建议模块。该一种从HP-UX平台至K-UX平台的C/C++应用迁移工具与现有技术相比,该发明能够运行于各种服务器及操作系统平台,为应用程序跨平台迁移提供指导,提高应用程序迁移工作的效率,填补了国内空白,实用性强。

权利要求书

权利要求书
1.  一种从HP-UX平台至K-UX平台的C/C++应用迁移工具,其特征在于,该工具的结构包括:
迁移工具软件架构,该架构基于JAVA语言实现,所述架构包括交互模块、均与交互模块相连接的操作系统差异识别模块、编译器差异识别模块和修改建议模块,操作系统差异识别模块、编译器差异识别模块均连接上述修改建议模块;其中:
所述交互模块用于人机交互,把手动设定的信息发送至操作系统差异识别模块、编译器差异识别模块,接收操作系统差异识别模块、编译器差异识别模块发送来的实时扫描信息并显示界面上,交互模块接收修改建议模块发送的失配源代码、失配源代码位置以及修改建议信息,并将其显示在界面上,同时允许用户在界面上针对每项失配的修改建议进行确认和对每项失配进行手动修改,经用户确认后将确认信息与修改信息发送至修改建议模块;
操作系统差异识别模块接收交互模块发送的手动设定信息,根据手动设定信息及HP-UX与K-UX操作系统差异规则,扫描程序源代码与makefile文件,识别程序源代码与makefile文件中因源平台与目标平台的操作系统差异造成的失配,生成自动修改建议,并将所有的失配信息及修改建议发送至修改建议模块,同时,操作系统差异识别模块会将扫描状态实时发送至交互模块供交互模块实时显示;
编译器差异识别模块接收交互模块发送的手动设定信息,根据手动设定信息及HP-UX C编译器与K-UX C编译器差异规则,扫描程序源代码与makefile文件,识别程序源代码与makefile文件中因源平台与目标平台的编译器差异造成的失配,生成自动修改建议,并将所有的失配信息及修改建议发送至修改建议模块,同时,编译器差异识别模块会将扫描状态实时发送至交互模块供交互模块实时显示;
修改建议模块接收操作系统差异识别模块与编译器差异识别模块发送的失配信息及自动修改建议后,将失配源代码、失配源代码位置以及修改建议整理成表格输出至交互模块,并在收到交互发送的确认信息与手动修改信息后,使这些修改结果在程序源代码和makefile文件中生效,并保存新的源代码和makefile文件。

2.  根据权利要求1所述的一种从HP-UX平台至K-UX平台的C/C++应用迁移工具,其特征在于,所述交互模块第以输入/输出端口与操作系统差异识别模块第一输入/输出端口连接,交互模块第二输入/输出端口与编译器差异识别模块第一输入/输出端口连接,交互模块第三输入/输出端口与修改建议模块第三输入/输出端口连接,操作系统差异识别模块第二输入/输出端口与修改建议模块第一输入/输出端口连接,编译器差异识别模块第二输入/输出端口与修改建议模块第二输入/输出端口连接。

3.  根据权利要求1或2所述的一种从HP-UX平台至K-UX平台的C/C++应用迁移工具,其特征在于,所述操作系统差异识别模块、编译器差异识别模块均生成相应规则,其具体规则为:
HP-UX与K-UX操作系统差异规则,包括进程处理规则、文件操作规则、指针操作规则,其是操作系统差异识别模块扫描程序源代码与makefile文件时,识别由HP-UX平台与K-UX平台的操作系统差异造成的代码失配的判定标准,以及提供失配代码修改建议的依据;
HP-UX C编译器与K-UX C编译器差异规则,该规则是编译器差异识别模块扫描程序源代码与makefile文件时,识别由HP-UX平台与K-UX平台的编译器差异造成的代码失配的判定标准,以及提供失配代码修改建议的依据。

4.  根据权利要求3所述的一种从HP-UX平台至K-UX平台的C/C++应用迁移工具,其特征在于,所述HP-UX与K-UX操作系统差异规则中,进程处理规则用于识别因HP-UX平台与K-UX平台进程处理差异导致运行结果错误的失配源代码,同时操作系统差异识别模块根据进程处理规则生成进程处理失配源代码修改建议;文件操作规则用于识别因HP-UX平台与K-UX平台文件操作差异导致运行结果错误的失配源代码,同时操作系统差异识别模块可根据文件操作规则生成文件操作失配源代码修改建议;指针操作规则用于识别因HP-UX平台与K-UX平台指针操作差异导致运行结果错误的失配源代码,同时操作系统差异识别模块根据指针操作规则生成指针操作失配源代码修改建议。

说明书

说明书一种从HP-UX平台至K-UX平台的C/C++应用迁移工具
技术领域
本发明涉及计算机信息技术领域,具体地说是一种实用性强、从HP-UX平台至K-UX平台的C/C++应用迁移工具。
背景技术
高端服务器承载着行业的核心应用,广泛应用在金融、电信、能源、交通等关键应用领域,其运行直接关系到社会、经济的正常运转。长期以来,由于缺乏高端服务器设计和制造能力,我国高端服务器市场一直为国外厂商把持,其中IBM长期占据50%以上的国内市场。在科技部“十一五”863计划的支持下,相关部门、科研单位积极配合,浪潮已成功研制了32路高端容错计算机系统,可用度达到99.999%,系统联机事务处理能力达到世界先进水平。为提高信息化建设重大装备的自主可控性,越来越多的信息系统倾向于使用自主产品。因此,在未来较长的一段时间内,国内的IT系统建设面临着国产化的变革,具体的信息系统建设与实施层面,体现为越来越多的跨平台迁移工作,其中大量的迁移是从IBM HP-UX平台至浪潮K-UX平台。
C/C++源代码是构建基础软件的基石,例如数据库软件、交易中间件、消息中间件、系统工具均基于C/C++语言开发。且在金融、电信、高性能计算等领域的核心应用软件也大量使用C/C++语言开发。由于异构服务器平台的CPU指令集差异、操作系统差异以及编译器差异,使得异构服务器平台C/C++源代码移植技术难度高,工作量大。如何降低移植难度,减少工作量,是进行异构服务器平台下C/C++源代码移植需要解决的关键问题。
发明内容
本发明的技术任务是针对以上不足之处,提供一种实用性强、从HP-UX平台至K-UX平台的C/C++应用迁移工具。
一种从HP-UX平台至K-UX平台的C/C++应用迁移工具,该工具的结构包括:
迁移工具软件架构,该架构基于JAVA语言实现,所述架构包括交互模块、均与交互模块相连接的操作系统差异识别模块、编译器差异识别模块和修改建议模块,操作系统差异识别模块、编译器差异识别模块均连接上述修改建议模块;其中:
所述交互模块用于人机交互,把手动设定的信息发送至操作系统差异识别模块、编译器差异识别模块,接收操作系统差异识别模块、编译器差异识别模块发送来的实时扫描信息并显示界面上,交互模块接收修改建议模块发送的失配源代码、失配源代码位置以及修改建议信息,并将其显示在界面上,同时允许用户在界面上针对每项失配的修改建议进行确认和对每项失配进行手动修改,经用户确认后将确认信息与修改信息发送至修改建议模块;
操作系统差异识别模块接收交互模块发送的手动设定信息,根据手动设定信息及HP-UX与K-UX操作系统差异规则,扫描程序源代码与makefile文件,识别程序源代码与makefile文件中因源平台与目标平台的操作系统差异造成的失配,生成自动修改建议,并将所有的失配信息及修改建议发送至修改建议模块,同时,操作系统差异识别模块会将扫描状态实时发送至交互模块供交互模块实时显示;
编译器差异识别模块接收交互模块发送的手动设定信息,根据手动设定信息及HP-UX C编译器与K-UX C编译器差异规则,扫描程序源代码与makefile文件,识别程序源代码与makefile文件中因源平台与目标平台的编译器差异造成的失配,生成自动修改建议,并将所有的失配信息及修改建议发送至修改建议模块,同时,编译器差异识别模块会将扫描状态实时发送至交互模块供交互模块实时显示;
修改建议模块接收操作系统差异识别模块与编译器差异识别模块发送的失配信息及自动修改建议后,将失配源代码、失配源代码位置以及修改建议整理成表格输出至交互模块,并在收到交互发送的确认信息与手动修改信息后,使这些修改结果在程序源代码和makefile文件中生效,并保存新的源代码和makefile文件。
所述交互模块第以输入/输出端口与操作系统差异识别模块第一输入/输出端口连接,交互模块第二输入/输出端口与编译器差异识别模块第一输入/输出端口连接,交互模块第三输入/输出端口与修改建议模块第三输入/输出端口连接,操作系统差异识别模块第二输入/输出端口与修改建议模块第一输入/输出端口连接,编译器差异识别模块第二输入/输出端口与修改建议模块第二输入/输出端口连接。
所述操作系统差异识别模块、编译器差异识别模块均生成相应规则,其具体规则为:
HP-UX与K-UX操作系统差异规则,包括进程处理规则、文件操作规则、指针操作规则,其是操作系统差异识别模块扫描程序源代码与makefile文件时,识别由HP-UX平台与K-UX平台的操作系统差异造成的代码失配的判定标准,以及提供失配代码修改建议的依据;
HP-UX C编译器与K-UX C编译器差异规则,该规则是编译器差异识别模块扫描程序源代码与makefile文件时,识别由HP-UX平台与K-UX平台的编译器差异造成的代码失配的判定标准,以及提供失配代码修改建议的依据。
所述HP-UX与K-UX操作系统差异规则中,进程处理规则用于识别因HP-UX平台与K-UX平台进程处理差异导致运行结果错误的失配源代码,同时操作系统差异识别模块根据进程处理规则生成进程处理失配源代码修改建议;文件操作规则用于识别因HP-UX平台与K-UX平台文件操作差异导致运行结果错误的失配源代码,同时操作系统差异识别模块可根据文件操作规则生成文件操作失配源代码修改建议;指针操作规则用于识别因HP-UX平台与K-UX平台指针操作差异导致运行结果错误的失配源代码,同时操作系统差异识别模块根据指针操作规则生成指针操作失配源代码修改建议。
本发明的一种从HP-UX平台至K-UX平台的C/C++应用迁移工具,具有以下优点:
该发明的一种从HP-UX平台至K-UX平台的C/C++应用迁移工具根据C/C++源代码在不同CPU指令集、操作系统以及编译器环境下的不同的处理方式,归纳一套规则,能够识别因平台差异造成的源代码、makefile文件与操作系统、编译器的失配,提出修改建议,最终输出扫描结果,扫描结果中体现所有识别到的源代码失配及失配修改建议,同时可在扫描结果中作出手动修改,手动修改结果可在源代码与makefile文件中生效,大大降低C/C++程序迁移工作量,提高应用程序迁移工作的效率,降低迁移难度;实用性强,易于推广。
附图说明
附图1为本发明的结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明作进一步说明。
本发明提出一种从HP-UX平台至K-UX平台的C/C++应用迁移工具,可跨平台安装,通过扫描源代码与makefile文件,根据建立的HP-UX平台与K-UX平台操作系统差异规则、编译器差异规则,识别源代码、makefile文件与操作系统、编译器的失配,提出修改建议,最终输出扫描结果,扫描结果中体现所有识别到的源代码失配及失配修改建议,同时可在扫描结果中作出手动修改,手动修改结果可在源代码与makefile文件中生效。如附图1所示,该工具的结构包括:
迁移工具软件架构,该架构基于JAVA语言实现,所述架构包括交互模块、均与交互模块相连接的操作系统差异识别模块、编译器差异识别模块和修改建议模块,操作系统差异识别模块、编译器差异识别模块均连接上述修改建议模块;其中:
所述交互模块用于人机交互,把手动设定的信息发送至操作系统差异识别模块、编译器差异识别模块,接收操作系统差异识别模块、编译器差异识别模块发送来的实时扫描信息并显示界面上,交互模块接收修改建议模块发送的失配源代码、失配源代码位置以及修改建议信息,并将其显示在界面上,同时允许用户在界面上针对每项失配的修改建议进行确认和对每项失配进行手动修改,经用户确认后将确认信息与修改信息发送至修改建议模块;
操作系统差异识别模块接收交互模块发送的手动设定信息,根据手动设定信息及HP-UX与K-UX操作系统差异规则,扫描程序源代码与makefile文件,识别程序源代码与makefile文件中因源平台与目标平台的操作系统差异造成的失配,生成自动修改建议,并将所有的失配信息及修改建议发送至修改建议模块,同时,操作系统差异识别模块会将扫描状态实时发送至交互模块供交互模块实时显示;
编译器差异识别模块接收交互模块发送的手动设定信息,根据手动设定信息及HP-UX C编译器与K-UX C编译器差异规则,扫描程序源代码与makefile文件,识别程序源代码与makefile文件中因源平台与目标平台的编译器差异造成的失配,生成自动修改建议,并将所有的失配信息及修改建议发送至修改建议模块,同时,编译器差异识别模块会将扫描状态实时发送至交互模块供交互模块实时显示;
修改建议模块接收操作系统差异识别模块与编译器差异识别模块发送的失配信息及自动修改建议后,将失配源代码、失配源代码位置以及修改建议整理成表格输出至交互模块,并在收到交互发送的确认信息与手动修改信息后,使这些修改结果在程序源代码和makefile文件中生效,并保存新的源代码和makefile文件。
所述交互模块第以输入/输出端口与操作系统差异识别模块第一输入/输出端口连接,交互模块第二输入/输出端口与编译器差异识别模块第一输入/输出端口连接,交互模块第三输入/输出端口与修改建议模块第三输入/输出端口连接,操作系统差异识别模块第二输入/输出端口与修改建议模块第一输入/输出端口连接,编译器差异识别模块第二输入/输出端口与修改建议模块第二输入/输出端口连接。
所述操作系统差异识别模块、编译器差异识别模块均生成相应规则,其具体规则为:
HP-UX与K-UX操作系统差异规则,包括进程处理规则、文件操作规则、指针操作规则,其是操作系统差异识别模块扫描程序源代码与makefile文件时,识别由HP-UX平台与K-UX平台的操作系统差异造成的代码失配的判定标准,以及提供失配代码修改建议的依据;
HP-UX C编译器与K-UX C编译器差异规则,该规则是编译器差异识别模块扫描程序源代码与makefile文件时,识别由HP-UX平台与K-UX平台的编译器差异造成的代码失配的判定标准,以及提供失配代码修改建议的依据。
所述HP-UX与K-UX操作系统差异规则中,进程处理规则用于识别因HP-UX平台与K-UX平台进程处理差异导致运行结果错误的失配源代码,同时操作系统差异识别模块根据进程处理规则生成进程处理失配源代码修改建议;文件操作规则用于识别因HP-UX平台与K-UX平台文件操作差异导致运行结果错误的失配源代码,同时操作系统差异识别模块可根据文件操作规则生成文件操作失配源代码修改建议;指针操作规则用于识别因HP-UX平台与K-UX平台指针操作差异导致运行结果错误的失配源代码,同时操作系统差异识别模块根据指针操作规则生成指针操作失配源代码修改建议。
基于附图1所示的从HP-UX平台至K-UX平台的C/C++应用迁移工具,其具体工作过程为:
1)所述从HP-UX平台至K-UX平台的C/C++应用迁移工具启动后,通过交互模块进行人机交互;
2)通过交互模块界面手动设定操作系统信息,包括HP-UX平台使用的操系统版本号、内核版本号和K-UX平台使用的操作系统版本号、内核版本号;
3)通过交互模块界面手动设定编译器信息,包括HP-UX平台使用的编译器及其版本和K-UX平台使用的编译器及其版本;
4)通过交互模块界面确认操作系统、编译器的设定信息;
5)通过交互模块界面手动选择拟迁移的应用源代码及其makefile文件;
6)交互模块将手动设定的操作系统、编译器信息,以及手动选择的应用源代码与makefile文件发送至操作系统差异识别模块、编译器差异识别模块;
7)操作系统差异识别模块接收交互模块发送的手动设定信息,根据手动设定信息及操作系统差异规则,扫描程序源代码与makefile文件,识别程序源代码与makefile文件中因源平台与目标平台的操作系统差异造成的失配,生成自动修改建议,并将所有的失配信息及修改建议发送至修改建议模块,同时,操作系统差异识别模块会将扫描状态实时发送至交互模块供交互模块实时显示,发送的扫描状态包括扫描代码的行数和识别到的失配的数量;
8)编译器差异识别模块接收交互模块发送的手动设定信息,根据手动设定信息及编译器差异规则,扫描程序源代码与makefile文件,识别程序源代码与makefile文件中因源平台与目标平台的编译器差异造成的失配,生成自动修改建议,并将所有的失配信息及修改建议发送至修改建议模块,同时,编译器差异识别模块会将扫描状态实时发送至交互模块供交互模块实时显示,发送的扫描状态包括扫描代码的行数和识别到的失配的数量;
9)待操作系统差异识别模块和编译器差异识别模块完成程序源代码与makefile文件的扫描后,修改建议模块根据接收的CPU指令集差异识别模块、操作系统差异识别模块以及编译器差异识别模块发送的失配信息及自动修改建议,将失配源代码、失配源代码位置以及修改建议整理成表格输出至交互模块;
10)交互模块通过交互模块界面显示失配信息表格,用户参考自动修改建议,在失配信息表格中逐条手动修改失配源代码;
11)交互模块发送的失配源代码修改信息至修改建议模块;
12)修改建议模块使交互模块发送的失配源代码修改信息在程序源代码和makefile文件中生效,并保存新的源代码和makefile文件。
上述具体实施方式仅是本发明的具体个案,本发明的专利保护范围包括但不限于上述具体实施方式,任何符合本发明的一种从HP-UX平台至K-UX平台的C/C++应用迁移工具的权利要求书的且任何所述技术领域的普通技术人员对其所做的适当变化或替换,皆应落入本发明的专利保护范围。

一种从HPUX平台至KUX平台的C/C应用迁移工具.pdf_第1页
第1页 / 共9页
一种从HPUX平台至KUX平台的C/C应用迁移工具.pdf_第2页
第2页 / 共9页
一种从HPUX平台至KUX平台的C/C应用迁移工具.pdf_第3页
第3页 / 共9页
点击查看更多>>
资源描述

《一种从HPUX平台至KUX平台的C/C应用迁移工具.pdf》由会员分享,可在线阅读,更多相关《一种从HPUX平台至KUX平台的C/C应用迁移工具.pdf(9页珍藏版)》请在专利查询网上搜索。

本发明公开了一种从HP-UX平台至K-UX平台的C/C+应用迁移工具,该工具的结构包括:迁移工具软件架构,该架构基于JAVA语言实现,所述架构包括交互模块、均与交互模块相连接的操作系统差异识别模块、编译器差异识别模块和修改建议模块,操作系统差异识别模块、编译器差异识别模块均连接上述修改建议模块。该一种从HP-UX平台至K-UX平台的C/C+应用迁移工具与现有技术相比,该发明能够运行于各种服务器及操。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1