CN102053855B - 一种软件的生成系统及方法 - Google Patents

一种软件的生成系统及方法 Download PDF

Info

Publication number
CN102053855B
CN102053855B CN201010602169.6A CN201010602169A CN102053855B CN 102053855 B CN102053855 B CN 102053855B CN 201010602169 A CN201010602169 A CN 201010602169A CN 102053855 B CN102053855 B CN 102053855B
Authority
CN
China
Prior art keywords
software
file
module
log file
functional module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201010602169.6A
Other languages
English (en)
Other versions
CN102053855A (zh
Inventor
唐金荣
吴庆民
张会健
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inner Mongolia Inspur Information Technology Co ltd
Original Assignee
Inspur Beijing Electronic Information Industry Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Inspur Beijing Electronic Information Industry Co Ltd filed Critical Inspur Beijing Electronic Information Industry Co Ltd
Priority to CN201010602169.6A priority Critical patent/CN102053855B/zh
Publication of CN102053855A publication Critical patent/CN102053855A/zh
Application granted granted Critical
Publication of CN102053855B publication Critical patent/CN102053855B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种软件的生成系统及方法,克服现有技术中软件多个版本之间不便管理维护的缺陷,其中该方法包括:通过图形配置界面选择对应的功能模块,并将选择结果记录到一记录文件中;根据记录文件以及源码文件判断所选的功能模块所对应的目标源码或目标配置是否进行了更改,若更改则对目标源码进行编译,将编译结果存储到一临时系统目录中;若未更改则提取出与功能模块相应的编译结果并存储到临时系统目录中;将基础系统文件拷贝到临时系统目录中;发布临时系统目录中的编译结果和基础系统文件,生成软件。本发明的技术方案有效平衡了用户的需求和软件的多版本管理难度,不加大软件管理维护难度的前提下可适应更广大用户的需求。

Description

一种软件的生成系统及方法
技术领域
本发明涉及数据管理技术,尤其涉及一种软件的生成系统及方法。
背景技术
随着信息社会的发展,各种数据都需要进行有效安全的存储和管理,单纯的个人电脑(PC)以及服务器,已经越来越难以满足各种企业对数据存储的要求。因此,专业存储应用在各行各业越来越广泛。而由于行业的差异性,企业对于专业存储的功能性和安全性都有着不同的要求,有的需要提供以太网(IP)-存储局域网络(SAN)服务,而有的需要提供光纤通道(FC)-SAN服务,有的需要高性能,有的需要数据高安全性。总之,所以用户需求是各式各样的。
而对于一款存储产品而言,其推出的功能是有限的,应用的场景也是有限的。因此,当用户提出一款存储需求时,就需要往既定存储产品中添加相应的存储功能,而当另一用户提出另一需求时,则又需要在既定产品中添加相应的其他新功能。当用户功能越来越多,功能差异越来越大时,发布的存储产品的系统版本将会越来越多,系统分支将会越来越多,这样会导致存储器的管理越来越混乱,维护越来越难,后续的技术支持也越来越复杂。
发明内容
本发明所要解决的技术问题是需要提供一种软件的生成系统和方法,克服现有技术中软件多个版本之间不便管理维护的缺陷。
为了解决上述技术问题,本发明提供了一种软件的生成系统,包括:
选择模块,用于通过图形配置界面选择对应于所述软件的功能模块,并将选择结果记录到一记录文件中;
判断模块,用于根据所述记录文件以及源码文件判断所选的功能模块所对应的目标源码或目标配置是否进行了更改,
编译模块,用于所述判断模块判断出所选的功能模块所对应的目标源码或目标配置进行了更改,则对所述目标源码进行编译,将编译结果存储到一临时系统目录中;
提取模块,用于所述判断模块判断出所选的功能模块所对应的目标源码或目标配置未进行更改,则提取出与所述功能模块相应的编译结果并存储到所述临时系统目录中;
拷贝模块,用于将基础系统文件拷贝到所述临时系统目录中;
发布模块,用于发布所述临时系统目录中的编译结果和基础系统文件,生成所述软件。
优选地,该系统进一步包括:
存储模块,用于发布所述临时系统目录中的编译结果和基础系统文件之前,将所述记录文件存储到所述临时系统目录中。
优选地,该系统进一步包括:
记录模块,用于结合所述记录文件记录所述软件所拥有的功能及其功能代码的版本号。
优选地,所述记录模块进一步用于结合所述记录文件记录所述软件的内核和内核驱动的区别号。
为了解决上述技术问题,本发明还提供了一种软件的生成方法,包括:
通过图形配置界面选择对应于所述软件的功能模块,并将选择结果记录到一记录文件中;
根据所述记录文件以及源码文件判断所选的功能模块所对应的目标源码或目标配置是否进行了更改,
若进行了更改则对所述目标源码进行编译,将编译结果存储到一临时系统目录中;若未进行更改则提取出与所述功能模块相应的编译结果并存储到所述临时系统目录中;
将基础系统文件拷贝到所述临时系统目录中;
发布所述临时系统目录中的编译结果和基础系统文件,生成所述软件。
优选地,发布所述临时系统目录中的编译结果和基础系统文件之前,进一步将所述记录文件存储到所述临时系统目录中。
优选地,所述图形配置界面包括功能选择接口和功能记录接口,其中所述功能选择接口用以提供功能模块的选择功能,所述功能记录接口用于将选择的功能模块记录到所述记录文件。
优选地,结合所述记录文件记录所述软件所拥有的功能及其功能代码的版本号。
优选地,结合所述记录文件进一步记录所述软件的内核和内核驱动的区别号。
优选地,所述记录文件中所记录的功能模块所对应的是新增的功能代码,则对所述目标源码进行重新编译。
与现有技术相比,本发明的技术方案有效地平衡了用户的需求和软件的多版本管理难度,在不加大软件管理维护难度的前提下可以适应更广大用户的需求。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。在附图中:
图1是本发明实施例一的一种系统软件的生成系统的组成示意图;
图2是本发明实施例二的一种系统软件的生成方法的流程示意图。
具体实施方式
以下将结合附图及实施例来详细说明本发明的实施方式,借此对本发明如何应用技术手段来解决技术问题,并达成技术效果的实现过程能充分理解并据以实施。
首先,如果不冲突,本发明实施例以及实施例中的各个特征的相互结合,均在本发明的保护范围之内。另外,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
实施例一、一种软件的生成系统
如图1所示,本实施例主要包括选择模块110、判断模块120、编译模块130、提取模块140、拷贝模块150以及发布模块160,其中:
选择模块110,用于通过图形配置界面选择对应于该软件的功能模块,并将选择结果记录到一记录文件中;
判断模块120,与选择模块110相连,用于根据该记录文件以及源码文件判断所选的功能模块所对应的目标源码或目标配置是否进行了更改,
编译模块130,与判断模块120相连,用于该判断模块120判断出所选的功能模块所对应的目标源码或目标配置进行了更改,则对该目标源码进行编译,将编译结果存储到一临时系统目录中;
提取模块140,与判断模块120相连,用于该判断模块120判断出所选的功能模块所对应的目标源码或目标配置未进行更改,则提取出与该功能模块相应的编译结果并存储到该临时系统目录中;
拷贝模块150,与编译模块130及提取模块140相连,用于将基础系统文件拷贝到该临时系统目录中;
发布模块160,与拷贝模块150相连,用于发布该临时系统目录中的编译结果和基础系统文件,生成该软件。
本实施例的上述系统,还可以进一步包括存储模块170,其与选择模块110相连,用于发布该临时系统目录中的编译结果和基础系统文件之前,将该记录文件存储到该临时系统目录中。
本实施例的上述系统,还可以进一步包括记录模块180,其与选择模块110及发布模块160相连,用于结合该记录文件记录该软件所拥有的功能及其功能代码的版本号。该记录模块180还可以进一步用于结合该记录文件记录该软件的内核和内核驱动的区别号。
需要说明的是,本实施例虽然是以系统软件的生成来进行说明的,但本发明的技术方案并不限于生成系统软件,应该理解为同样适用于生成系统软件之外的其他各种软件,比如应用软件、管理软件等等。
实施例二、一种软件的生成方法
本实施例应用于系统软件的发布过程。需要说明的是,本实施例虽然也是以系统软件的生成来进行说明的,但本发明的技术方案也不限于生成系统软件,应该理解为同样适用于生成系统软件之外的其他各种软件,比如应用软件、管理软件等等。
如图2所示,本实施例主要包括如下步骤:
步骤S210,通过图形配置界面,管理员选择所要生成的系统软件的功能模块,并将选择结果记录到一记录文件中;
管理员通过该图形配置界面,能够查看用于发布各版本系统软件的所有功能模块;
步骤S220,根据记录文件以及源码文件,判断所选的功能模块所对应的目标源码或目标配置是否进行了更改(不同版本的系统所需要的功能模块的源码版本可能不一样,或者有些会针对某一系统打特定的补丁等),若进行了更改则转步骤S230,否则(未进行更改)转步骤S240;
步骤S230,对该目标源码进行编译,将编译后得到的编译结果存储到一临时系统目录中,转步骤S250;
在本实施例中,若记录文件中所记录的功能模块所对应的是新增的功能代码,则需要进行目标源码的重新编译;
步骤S240,提取出与功能模块相应的编译结果并存储到一临时系统目录中,转步骤S250;
步骤S250,将基础系统文件拷贝到该临时系统目录中;
步骤S260,将记录文件存储到该临时系统目录中,以方便生成后的系统软件查看和管理所添加的这些功能模块;
步骤S270,发布该临时系统目录中的该编译结果和基础系统文件,生成系统软件。
上述步骤S210中,根据用户的需求,可以在图形配置界面上调用各功能模块的显示接口,来查看功能模块的版本信息、依赖库、依赖关系以及简单的功能描述等。图形配置界面包括一功能选择接口和一功能记录接口,其中该功能选择接口用以向管理员提供功能模块的选择功能,该功能记录接口用于将管理员选择的功能模块记录到记录文件中,包括记录其名称和版本信息,以及功能模块的依赖库等。
上述步骤S220中,对比记录文件和源码文件,获取到哪些功能模块所对应的功能代码可以直接提取,哪些功能代码需要重新进行编译。
对需要重新进行编译的功能代码,将编译完成的编译结果存放到临时系统目录中,并在源码文件中改变编译结果的编译状态,以免下个系统需要这个功能代码时,再重新编译该编译结果,造成时间上的浪费。
若在功能记录文件中有该软件,但是功能存储模块中没有该软件(比如可能是新加入的工具程序,其存放源码并在功能记录文件中添加记录,但是还没有进行编译,所以并没有之前编译生成的软件;又比如也可能是该软件在功能存储模块中被删除),则需要调用功能代码重编译接口进行源码的重编译,再将编译完成的软件存放到功能存储模块中。
当功能模块的配置文件被修改后,也需要将配置文件存放到该功能模块的相应目录中。
上述步骤S230中,当新增加功能代码时,需要通过添加功能代码接口来添加该新增的功能代码的名称、版本、依赖关系以及状态等信息,然后功能模块的显示接口将其在图形界面上显示出来,并标识为“新增”。当管理员选择该新增加的功能代码对应的功能模块后,则会进行源码的重新编译,然后将编译完成的编译结果存放到临时系统目录中,并在源码文件中更改该新增加的功能代码的编译状态。
上述步骤S250中,在一般的状态下,系统内核等是不需要更改的,但是也不排除需要更改的可能。因此,若需要更改系统内核参数或者修改系统内核选项时,则需要重新编译内核。这样,就可能出现多个内核导致混乱的问题,本发明按各个内核应用的场景进行分类,详细记录内核之间的区别;重新编译系统内核后,则相应的内核驱动也将重编译,并按内核划分的规则来进行划分。
上述步骤S260中,结合记录文件来记录生成的系统软件所拥有的功能和其功能代码的版本号。另外,还可以记录内核和内核驱动的区别号,以此来记录一个完整的系统软件各模块的版本信息。
按照本发明技术方案,虽然会产生出各式各样的系统,但是主线只有一条,维护人员只需要去维护这一条主线即可。当客户的系统出现故障时,只需将客户的系统中的记录文件获取到,就可以容易就会重做一个与故障之前一模一样的系统出来,方便问题的复现与修改。本发明技术方案从根本上杜绝了软件多版本、多分支后带来的管理、开发、维护以及技术支持等难题,无需大量的维护人员和维护成本即可轻松地完成维护工作,节约了维护成本,同时也降低了维护难度。同时,在对本发明技术方案生成的系统软件进行多版本的管理时,各版本的版本信息以及相应的补丁的版本信息,均可以方便地查看以及加载或者卸载。
本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
虽然本发明所揭露的实施方式如上,但所述的内容只是为了便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属技术领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式上及细节上作任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。

Claims (10)

1.一种软件的生成系统,其特征在于,包括:
选择模块,用于通过图形配置界面选择对应于所述软件的功能模块,并将选择结果记录到一记录文件中;
判断模块,用于根据所述记录文件以及源码文件判断所选的功能模块所对应的目标源码或目标配置是否进行了更改,
编译模块,用于当所述判断模块判断出所选的功能模块所对应的目标源码或目标配置进行了更改,则对所述目标源码进行编译,将编译结果存储到一临时系统目录中;
提取模块,用于当所述判断模块判断出所选的功能模块所对应的目标源码或目标配置未进行更改,则提取出与所述功能模块相应的编译结果并存储到所述临时系统目录中;
拷贝模块,用于将基础系统文件拷贝到所述临时系统目录中;
发布模块,用于发布所述临时系统目录中的编译结果和基础系统文件,生成所述软件。
2.根据权利要求1所述的系统,其特征在于,该系统进一步包括:
存储模块,用于发布所述临时系统目录中的编译结果和基础系统文件之前,将所述记录文件存储到所述临时系统目录中。
3.根据权利要求1所述的系统,其特征在于,该系统进一步包括:
记录模块,用于结合所述记录文件记录所述软件所拥有的功能及其功能代码的版本号。
4.根据权利要求3所述的系统,其特征在于:
所述记录模块进一步用于结合所述记录文件记录所述软件的内核和内核驱动的区别号。
5.一种软件的生成方法,其特征在于,包括:
通过图形配置界面选择对应于所述软件的功能模块,并将选择结果记录到一记录文件中;
根据所述记录文件以及源码文件判断所选的功能模块所对应的目标源码或目标配置是否进行了更改,
若进行了更改则对所述目标源码进行编译,将编译结果存储到一临时系统目录中;若未进行更改则提取出与所述功能模块相应的编译结果并存储到所述临时系统目录中;
将基础系统文件拷贝到所述临时系统目录中;
发布所述临时系统目录中的编译结果和基础系统文件,生成所述软件。
6.根据权利要求5所述的方法,其特征在于:
发布所述临时系统目录中的编译结果和基础系统文件之前,进一步将所述记录文件存储到所述临时系统目录中。
7.根据权利要求5所述的方法,其特征在于:
所述图形配置界面包括功能选择接口和功能记录接口,其中所述功能选择接口用以提供功能模块的选择功能,所述功能记录接口用于将选择的功能模块记录到所述记录文件。
8.根据权利要求5所述的方法,其特征在于:
结合所述记录文件记录所述软件所拥有的功能及其功能代码的版本号。
9.根据权利要求8所述的方法,其特征在于:
结合所述记录文件进一步记录所述软件的内核和内核驱动的区别号。
10.根据权利要求5所述的方法,其特征在于:
所述记录文件中所记录的功能模块所对应的是新增的功能代码,则对所述目标源码进行重新编译。
CN201010602169.6A 2010-12-13 2010-12-13 一种软件的生成系统及方法 Active CN102053855B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010602169.6A CN102053855B (zh) 2010-12-13 2010-12-13 一种软件的生成系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010602169.6A CN102053855B (zh) 2010-12-13 2010-12-13 一种软件的生成系统及方法

Publications (2)

Publication Number Publication Date
CN102053855A CN102053855A (zh) 2011-05-11
CN102053855B true CN102053855B (zh) 2014-03-05

Family

ID=43958210

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010602169.6A Active CN102053855B (zh) 2010-12-13 2010-12-13 一种软件的生成系统及方法

Country Status (1)

Country Link
CN (1) CN102053855B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107357593A (zh) * 2017-08-24 2017-11-17 武汉斗鱼网络科技有限公司 源代码文件组建方法、装置、电子终端及可读存储介质
CN108762736B (zh) * 2018-03-21 2022-09-02 五八有限公司 项目分支的管理方法、装置、设备及计算机可读存储介质
CN108897543B (zh) * 2018-06-29 2022-01-14 苏州科达科技股份有限公司 版本的临时编译系统、方法、装置及存储介质
CN109358841B (zh) * 2018-08-15 2024-04-30 中国平安人寿保险股份有限公司 网页应用开发编译方法、装置及存储设备、计算机设备
CN110442329A (zh) * 2019-06-26 2019-11-12 平安科技(深圳)有限公司 代码段的生成方法、装置、存储介质及计算机设备
CN111857663B (zh) * 2020-07-17 2022-06-17 济南浪潮数据技术有限公司 一种软件设计方法、系统及电子设备和存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1639472A1 (en) * 2003-06-20 2006-03-29 InnoPath Software, Inc. Processing software for use in generating difference files
CN101042645A (zh) * 2007-01-17 2007-09-26 北京立通无限科技有限公司 统一软件开发环境的方法、设备及系统
CN101149700A (zh) * 2006-09-19 2008-03-26 中兴通讯股份有限公司 通过配置文件实现命令显示的方法
CN101523384A (zh) * 2005-07-29 2009-09-02 微软公司 代码生成模式

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101004680B (zh) * 2006-11-23 2011-06-22 福建顶点软件股份有限公司 一种以直接对象模型定义为核心的灵活快捷的软件开发方法及支持系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1639472A1 (en) * 2003-06-20 2006-03-29 InnoPath Software, Inc. Processing software for use in generating difference files
CN101523384A (zh) * 2005-07-29 2009-09-02 微软公司 代码生成模式
CN101149700A (zh) * 2006-09-19 2008-03-26 中兴通讯股份有限公司 通过配置文件实现命令显示的方法
CN101042645A (zh) * 2007-01-17 2007-09-26 北京立通无限科技有限公司 统一软件开发环境的方法、设备及系统

Also Published As

Publication number Publication date
CN102053855A (zh) 2011-05-11

Similar Documents

Publication Publication Date Title
CN108536761B (zh) 报表数据查询方法及服务器
George HBase: the definitive guide
CN102053855B (zh) 一种软件的生成系统及方法
Mistry et al. Introducing Microsoft SQL Server 2014
JP2020526805A (ja) 関連する子ブロックチェーンを用いたブロックチェーンの実用性向上のためのシステムおよび方法
CN101577735B (zh) 一种接管故障元数据服务器的方法、装置及系统
CN106021016A (zh) 在快照之间的虚拟时间点访问
US20230117105A1 (en) On-demand loading of dynamic scripting language code for reduced memory usage
CN102360410B (zh) 一种文件系统的用户操作发现方法和装置
CN101640587B (zh) 数据同步方法及装置
CN103890709A (zh) 基于缓存的键值数据库映射和复制
CN102142032B (zh) 一种分布式文件系统的数据读写方法及系统
CN105635311A (zh) 一种云管理平台中资源池信息同步的方法
CN105701190A (zh) 一种数据同步的方法和装置
CN106559484A (zh) 实例系统免安装运行应用的方法
CN102638566A (zh) 一种基于云存储的blog系统运行方法
CN103577329A (zh) 一种快照管理方法和装置
CN102521114A (zh) 一种虚拟化环境下的文件系统日志存储系统
CN108153804A (zh) 一种对称分布式文件系统的元数据日志更新方法
CN102799503A (zh) 一种应用于大量小文件的恢复方法
CN110532058B (zh) 容器集群服务的管理方法、装置、设备及可读存储介质
CN115827086A (zh) 一种基于分布式集群架构的高可用软件开发集成平台
CN102902770A (zh) 一种镜像文件拼装方法及系统
Tsai et al. Data Partitioning and Redundancy Management for Robust Multi-Tenancy SaaS.
Ma et al. A transparent data middleware in support of multi-tenancy

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20180827

Address after: 200436 Room 411, No. three, JIANGCHANG Road, Jingan District, Shanghai, 411

Patentee after: SHANGHAI INSPUR CLOUD CALCULATING SERVICE CO.,LTD.

Address before: 100085 floor 1, C 2-1, No. 2, Shang Di Road, Haidian District, Beijing.

Patentee before: INSPUR (BEIJING) ELECTRONIC INFORMATION INDUSTRY Co.,Ltd.

TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20221021

Address after: 010000 Rooms 102 and 103, S01 Scientific Research Building, Inner Mongolia Inspur Big Data Industrial Park, No. 33, Nandian Street, New District, Hohhot, Inner Mongolia Autonomous Region

Patentee after: Inner Mongolia Inspur Information Technology Co.,Ltd.

Address before: 200436 Room 411, No. three, JIANGCHANG Road, Jingan District, Shanghai, 411

Patentee before: SHANGHAI INSPUR CLOUD CALCULATING SERVICE CO.,LTD.

TR01 Transfer of patent right