一种文件更新方法及装置的制造方法

文档序号:10655216阅读:159来源:国知局
一种文件更新方法及装置的制造方法
【专利摘要】本发明公开了一种文件更新方法及装置,包括:在确定出需要对文件进行更新时,将预先设定的文件更新层的第一更新文件目录重新命名为第二更新文件目录;备份所述第二更新文件目录并将备份的所述第二更新文件目录重新命名为第一更新文件目录;获得更新的文件内容;将所述文件内容安装到重新命名后的所述第一更新目录中;以及在设定时间到达时更新所述文件内容至预先设定的文件更新层,用于在不影响工控系统的运行的前提下,提高文件更新的灵活性。
【专利说明】
一种文件更新方法及装置
技术领域
[0001 ]本发明涉及计算机技术领域,尤其是涉及一种文件更新方法及装置。【背景技术】
[0002]在工业控制领域,工控机是实现自动化的必不可缺少的一种设备。为保证工控机系统的安全性,在工控机上除运行基础系统之外,一般还运行网络安全系统。
[0003]为保证工控系统的安全性和稳定性,工控机中的基础系统和网络安全系统的文件需要不断进行更新,通常情况下,在进行文件更新时,一般是根据一个最新的版本号,对已经安装在工控机中的低于该新版本号的各个文件进行替换,然后再通过重新启动工控机或重新启动相应的网络安全系统,以达到更新的目的。随着计算机技术的不断发展,工控机中的基础文件、网络安全系统的相应文件也越来越多,更新的周期也在不断缩短,工控机运行的环境也越来与复杂。如果仍然采用传统方式进行文件更新,可能需要不断进行重启,则会对当前运行的系统进行断网,影响工控系统的运行。并且,如果待更新的文件较多的情况下,文件替换需要一个一个进行,更新缓慢,因此,目前对工控机中运行的文件在更新时,局限性较强。
【发明内容】

[0004]本发明提供了一种文件更新方法及装置,用于在不影响工控系统的运行的前提下,提高文件更新的灵活性。
[0005]—种文件更新方法,包括:在确定出需要对文件进行更新时,将预先设定的文件更新层的第一更新文件目录重新命名为第二更新文件目录;备份所述第二更新文件目录并将备份的所述第二更新文件目录重新命名为第一更新文件目录;获得更新的文件内容;将所述文件内容安装到重新命名后的所述第一更新目录中;以及在设定时间到达时更新所述文件内容至预先设定的文件更新层。[〇〇〇6]在确定出需要对文件进行更新之前,还包括:将系统中的文件按照设定规则划分为不同类别;并将分类的后的各文件分别对应映射至修改文件目录、第一更新文件目录以及出厂文件目录,所述修改文件目录、第一更新文件目录以及出厂文件目录之间具备层叠关系,不同的层叠之间的文件对应不同的操作优先级。
[0007]获得更新的文件内容,包括:获得需要进行更新的文件的文件内容;确定所述文件内容对应的存储路径;按照所述存储路径存储所述文件内容。
[0008]在更新所述文件内容至预先设定的文件更新层之前,还包括:若确定出需要进行更新的文件异常时,标识所述出现异常的文件。
[0009]备份所述第二更新文件目录,包括:建立名称为第二更新文件目录的文件存储区; 将所述第一更新文件目录中的全部文件复制到所述第二更新文件目录中。
[0010]—种文件更新装置,包括:处理单元,用于在确定出需要对文件进行更新时,将预先设定的文件更新层的第一更新文件目录重新命名为第二更新文件目录;备份所述第二更新文件目录并将备份的所述第二更新文件目录重新命名为第一更新文件目录获得单元,用于获得更新的文件内容;所述处理单元,还用于将所述文件内容安装到重新命名后的所述第一更新目录中;以及在设定时间到达时更新所述文件内容至预先设定的文件更新层。
[0011]所述处理单元,还用于将系统中的文件按照设定规则划分为不同类别;并将分类的后的各文件分别对应映射至修改文件目录、第一更新文件目录以及出厂文件目录,所述修改文件目录、第一更新文件目录以及出厂文件目录之间具备层叠关系,不同的层叠之间的文件对应不同的操作优先级。
[0012]所述处理单元,还用于获得需要进行更新的文件的文件内容;确定所述文件内容对应的存储路径;按照所述存储路径存储所述文件内容。
[0013]所述处理单元,还用于若确定出需要进行更新的文件异常时,标识所述出现异常的文件。
[0014]所述处理单元,具体用于建立名称为第二更新文件目录的文件存储区;将所述第一更新文件目录中的全部文件复制到所述第二更新文件目录中。[〇〇15]通过采用上述技术方案,在确定出需要对文件进行更新时,将预先设定的文件更新层的第一更新文件目录重新命名为第二更新文件目录;备份所述第二更新文件目录并将备份的所述第二更新文件目录重新命名为第一更新文件目录;获得更新的文件内容;将所述文件内容安装到重新命名后的所述第一更新目录中;以及在设定时间到达时更新所述文件内容至预先设定的文件更新层。充分利用层叠文件系统的特性,将文件进行重新命名时并不影响当前系统所持有的文件句柄,并且,多层文件系统保证了系统的可恢复性,在不影响工控系统的运行的前提下,提高文件更新的灵活性。【附图说明】
[0016]图1为本发明实施例中,提出的文件更新装置结构组成示意图;
[0017]图2为本发明实施例中,提出的文件更新方法流程图;
[0018]图3为本发明实施例中提出的获得文件内容示意图;
[0019]图4为本发明实施例提出的构建顺序示意图。【具体实施方式】
[0020]下面将结合各个附图对本发明实施例技术方案的主要实现原理、【具体实施方式】及其对应能够达到的有益效果进行详细地阐述。
[0021]本发明实施例提出一种文件更新装置,如图1所示,具体包括:
[0022]处理单元101,用于在确定出需要对文件进行更新时,将预先设定的文件更新层的第一更新文件目录重新命名为第二更新文件目录;备份所述第二更新文件目录并将备份的所述第二更新文件目录重新命名为第一更新文件目录。[〇〇23]获得单元102,用于获得更新的文件内容;所述处理单元101,还用于将所述文件内容安装到重新命名后的所述第一更新目录中;以及在设定时间到达时更新所述文件内容至预先设定的文件更新层。[〇〇24]所述处理单元101,还用于将系统中的文件按照设定规则划分为不同类别;并将分类的后的各文件分别对应映射至修改文件目录、第一更新文件目录以及出厂文件目录,所述修改文件目录、第一更新文件目录以及出厂文件目录之间具备层叠关系,不同的层叠之间的文件对应不同的操作优先级。
[0025]所述处理单元101,还用于获得需要进行更新的文件的文件内容;确定所述文件内容对应的存储路径;按照所述存储路径存储所述文件内容。
[0026]所述处理单元101,还用于若确定出需要进行更新的文件异常时,标识所述出现异常的文件。
[0027]所述处理单元101,具体用于建立名称为第二更新文件目录的文件存储区;将所述第一更新文件目录中的全部文件复制到所述第二更新文件目录中。[〇〇28]相应地,本发明实例提出一种文件更新方法,如图2所示,其处理流程如下述:
[0029]步骤21,文件更新装置将系统中的文件按照设定规则划分为不同类别。
[0030]步骤22,将分类的后的各文件分别对应映射至修改文件目录、第一更新文件目录以及出厂文件目录。[〇〇31]修改文件目录、第一更新文件目录以及出厂文件目录之间具备层叠关系,不同的层叠之间的文件对应不同的操作优先级。[〇〇32]本发明实施例提出的技术方案中,文件更新装置将系统中的文件根据使用规则或操作权限将系统中的文件进行分层,以不同的挂载顺序与读写权限映射构建基础文件系统,能够实现按照升级处理流程分类,提高系统的维护性。并且,将系统中的基础的文件拆分,能够达到文件复用、多系统环境的效果。
[0033]例如,文件更新装置按照操作权限,可以将系统中的文件分类为修改文件 (modified),第一更新文件(update),出厂文件(orig)三大类。
[0034]具体实施中,文件更新装置在启动时,可以在启动系统之前,添加初始化代码,初始化代码根据初始化配置文件进行分配,并选择映射关系。例如将/modified/root,/ update/root,/or ig/root,映身才为/root 〇
[0035]在本发明实施例提出的技术方案中,不同的类别之间具有层得关系,在进行呈现时,上层的文件可以优先于下层的文件呈现。例如,将初始的系统文件放在出厂文件目录层,更新的文件放在第一更新文件目录层,最上层为修改文件目录层,出厂文件目录层与第一更新文件目录层对于最外层目录(也就是层叠后表现出来的目录)是只读的,所以所有对最外层目录的修改都会在修改文件目录层。[〇〇36]步骤23,确定是否有文件进行更新,如果判断结果为是,执行步骤24,反之结束处理。
[0037]步骤24,在确定出需要对文件进行更新时,将预先设定的文件更新层的第一更新文件目录重新命名为第二更新文件目录。
[0038]步骤25,备份第二更新文件目录并将备份的第二更新文件目录重新命名为第一更新文件目录。
[0039]备份第二更新文件目录具体可以采用下述两种方式:
[0040]第一种方式:将第一更新目录命名为第二更新目录,复制命名的第二更新目录并将复制后的第二更新目录命名为第一更新目录。[0041 ]第二种方式:建立名称为第二更新目录的文件存储区,将第一更行目录中的全部文件复制到第二更新目录中。
[0042]步骤26,获得更新的文件内容。
[0043]获得需要进行更新的文件的文件内容,确定文件内容对应的存储路径,按照存储路径存储该文件内容。
[0044]在本发明实施例提出的技术方案中,如图3所示,针对应用程序(appliciat1n, APP)开发者来说,采用本发明实施例提出的技术方案,App的开发者将需要更新的文件的文件内容提交至文件更新装置提供的对应的目录。然后App的开发者按照本发明实施例提出的技术方案,将需要的app组合,填写对应的配置文件,文件更新装置在确定出需要对文件进行更新时,获得需要进行更新的文件的文件内容,确定文件内容对应的存储路径,按照存储路径存储该文件内容。从而实现将接收到的文件内容进行整合。
[0045]具体实施中,首先,App的开发者按照文件更新装置提供的目录结构,提交文件内容(例如代码、图片等),将该些文件内容定义为一个组件,加入到文件更新装置中。其中,组件内容可以包含代码管理系统路径,系统资源,可管理属性等。App的开发者可以定义自身该组件的名称/版本等信息,可以定义定义制作升级包的hook脚本。
[0046]其次,文件更新装置根据配置模版,选择需要的组件进行组合,从而实现自动构建软件包与升级包,构建的过程中,文件更新装置会调用app想要自定义的hook脚本来完成应用程序的定制化操作。进一步地,文件更新装置可以抽象出即将构建的系统资源分配情况, 根据各个应用/系统组件的资源信息,对比已有设备的虚拟资源配置,进行抽象的优化,生成各个模块对应的资源分配脚本。
[0047]再次,文件更新装置利用资源分配脚本/配置模版为应用程序进行资源优化,文件安装。可以让app开发者无需关心系统层面的优化,降低系统分层结构软件安装的复杂度。 而且可以只针对一个或多个组件进行升级,加快了升级的速度减小了对系统的影响。在升级包中可以自定义每个升级包不同的处理方法与升级流程,也通过hook脚本进行处理。 [〇〇48]在本发明实施例提出的技术方案中,app开发者在提交需要更新的文件内容时, app开发者无需考虑软件包怎样制作,只需将文件内容提交到配置的文件更新装置提供的对应目录。app开发者将需要的app组合,填写对应的配置文件,可自动将app整合,生成对应的产品软件包和升级包。由传统的系统选择软件安装,变为选择系统组合,由文件更新装置统一维护管理软件的安装卸载流程。
[0049]步骤27,将文件内容安装到重新命名后的第一更新目录中。
[0050]步骤28,在设定时间到达时更新文件内容至预先设定的文件更新层。[〇〇511举一例进行详细阐述:[〇〇52]在具体实施中,文件更新装置在进行文件更新之前,如图4所示,系统中的文件映射关系为:/modified->Aipdate_>/orig。备份预先设置的第一更新目录中的文件至第二更新目录中,例如,将/update目录重新命名为/update_ba,拷贝update_bak名为/update,将更新的文件内容安装在八ipdate目录中。采用该种方式,文件系统映射是基于inode节点, inode节点不受文件名改变影响,因此当前系统运行并未受到影响。[0〇53]然后将文件内容安装至update层。[〇〇54]其中,在上述步骤28中,可以在适当的时间到达时,更新文件内容至预先设定的文件更新层。
[0055]适当的时间可以是预先设定的,例如系统中运行的业务应用较少的情况下,进行更新,在更新时,仅需要重新映射出厂文件即可完成文件的更新,使升级生效。
[0056]可选地,在上述步骤28更新文件内容至预先设定的文件更新层之前,还包括:若确定出需要进行更新的文件异常时,标识出现异常的文件。
[0057]具体实施中,在对文件进行更新时,可以对初始化配置文件,设置异常标识字段, 在文件更新完成之后,删除该异常标识字段。
[0058]在本发明实例提出的技术方案中,对文件进行更新时,文件更新内容直接写入到 update层,orig层与modified没有受到影响,因此可以根据异常标识字段选择映射关系,若发现存在异常标识字段,则会采用恢复操作来恢复分层文件系统的映射关系,避免系统启动异常。在文件更新的过程中,记录每一步的文件情况,如有异常,可以回退到文件更新之前的状态。
[0059]在本发明实施例上述提出的技术方案中,利用层叠文件系统的特性,对文件进行重新命名,并不影响当前系统所持有的文件句柄,将跟新的文件存储到重命名之前的文件的相同的位置,这样,虽然更新的文件存储的位置和原来相同,但是由于没有进行更新触发,所以并没有生效,这样不影响当前系统的运行。
[0060]本领域的技术人员应明白,本发明的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、只读光盘、光学存储器等)上实施的计算机程序产品的形式。
[0061]本发明是参照根据本发明实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0062]这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0063]这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。[〇〇64]尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
[0065]显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
【主权项】
1.一种文件更新方法,其特征在于,包括:在确定出需要对文件进行更新时,将预先设定的文件更新层的第一更新文件目录重新 命名为第二更新文件目录;备份所述第二更新文件目录并将备份的所述第二更新文件目录重新命名为第一更新 文件目录;获得更新的文件内容;将所述文件内容安装到重新命名后的所述第一更新目录中;以及在设定时间到达时更新所述文件内容至预先设定的文件更新层。2.如权利要求1所述的方法,其特征在于,在确定出需要对文件进行更新之前,还包括:将系统中的文件按照设定规则划分为不同类别;并将分类的后的各文件分别对应映射至修改文件目录、第一更新文件目录以及出厂文件 目录,所述修改文件目录、第一更新文件目录以及出厂文件目录之间具备层叠关系,不同的 层叠之间的文件对应不同的操作优先级。3.如权利要求2所述的方法,其特征在于,获得更新的文件内容,包括:获得需要进行更新的文件的文件内容;确定所述文件内容对应的存储路径;按照所述存储路径存储所述文件内容。4.如权利要求2所述的方法,其特征在于,在更新所述文件内容至预先设定的文件更新 层之前,还包括:若确定出需要进行更新的文件异常时,标识所述出现异常的文件。5.如权利要求2?4任一所述的方法,其特征在于,备份所述第二更新文件目录,包括:建立名称为第二更新文件目录的文件存储区;将所述第一更新文件目录中的全部文件复制到所述第二更新文件目录中。6.—种文件更新装置,其特征在于,包括:处理单元,用于在确定出需要对文件进行更新时,将预先设定的文件更新层的第一更 新文件目录重新命名为第二更新文件目录;备份所述第二更新文件目录并将备份的所述第 二更新文件目录重新命名为第一更新文件目录;获得单元,用于获得更新的文件内容;所述处理单元,还用于将所述文件内容安装到重新命名后的所述第一更新目录中;以 及在设定时间到达时更新所述文件内容至预先设定的文件更新层。7.如权利要求6所述的装置,其特征在于,所述处理单元,还用于将系统中的文件按照 设定规则划分为不同类别;并将分类的后的各文件分别对应映射至修改文件目录、第一更 新文件目录以及出厂文件目录,所述修改文件目录、第一更新文件目录以及出厂文件目录 之间具备层叠关系,不同的层叠之间的文件对应不同的操作优先级。8.如权利要求6所述的装置,其特征在于,所述处理单元,还用于获得需要进行更新的 文件的文件内容;确定所述文件内容对应的存储路径;按照所述存储路径存储所述文件内 容。9.如权利要求6所述的装置,其特征在于,所述处理单元,还用于若确定出需要进行更 新的文件异常时,标识所述出现异常的文件。10.如权利要求6所述的装置,其特征在于,所述处理单元,具体用于建立名称为第二更 新文件目录的文件存储区;将所述第一更新文件目录中的全部文件复制到所述第二更新文 件目录中。
【文档编号】G06F17/30GK106021373SQ201610309804
【公开日】2016年10月12日
【申请日】2016年5月11日
【发明人】范敦球, 周素华, 黄帅, 欧帅
【申请人】北京神州绿盟信息安全科技股份有限公司, 北京神州绿盟科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1