CN109656588A - 一种远程快速实现用电信息采集终端软件更新的方法及系统 - Google Patents

一种远程快速实现用电信息采集终端软件更新的方法及系统 Download PDF

Info

Publication number
CN109656588A
CN109656588A CN201811353041.3A CN201811353041A CN109656588A CN 109656588 A CN109656588 A CN 109656588A CN 201811353041 A CN201811353041 A CN 201811353041A CN 109656588 A CN109656588 A CN 109656588A
Authority
CN
China
Prior art keywords
software
packet
software package
runs
information
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.)
Pending
Application number
CN201811353041.3A
Other languages
English (en)
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.)
State Grid Corp of China SGCC
China Electric Power Research Institute Co Ltd CEPRI
Original Assignee
State Grid Corp of China SGCC
China Electric Power Research Institute Co Ltd CEPRI
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 State Grid Corp of China SGCC, China Electric Power Research Institute Co Ltd CEPRI filed Critical State Grid Corp of China SGCC
Priority to CN201811353041.3A priority Critical patent/CN109656588A/zh
Publication of CN109656588A publication Critical patent/CN109656588A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明公开了一种远程快速实现用电信息采集终端软件更新的方法及系统,包括:利用远程网络通信建立服务器和终端设备之间的远程通信链路,以获取所述终端设备上的在运行软件包的控制信息;根据在运行软件包的控制信息,确定与在运行软件包匹配的更新软件包;对更新软件包进行解包以获取控制信息;将更新软件包的控制信息和在运行软件包的控制信息进行比对获取差异信息,并根据差异信息从更新软件包中提取待升级的程序文件以生成补丁文件;将所述补丁文件通过所述远程通信链路下发至所述终端设备,以使所述终端设备根据升级处理逻辑完成软件包更新。本发明明显地减少了网络传输数据量,提高了升级效率;同时有效地解决了软件包版本无法回滚的问题。

Description

一种远程快速实现用电信息采集终端软件更新的方法及系统
技术领域
本发明涉及用电信息采集终端软件更新技术领域,并且更具体地,涉及一种远程快速实现用电信息采集终端软件更新的方法及系统。
背景技术
在用电信息采集系统中,终端设备承担着具体采集功能的实现。但是,由于采集数据、协议和功能需求的不断扩充和升级,产品面临着较为频繁的软件升级要求,并且通常为批量升级。
目前,由于各个终端厂家的软件包格式尚不统一,导致远程软件升级策略无法统一,存在的问题主要包括:1.部分厂家使用的软件升级包规模较大,远程升级时,网络传输数据量较大,升级效率低;2.部分厂家使用经过裁剪的规模较小的专用升级包,但是由于包格式不统一,远程升级无法实现统一策略的自动化升级,人为依赖较多;3.现有终端的远程升级无法支持软件版本的远程自动回滚。
因此,需要一种远程快速实现用电信息采集终端软件更新的方法,以实现自动、快速的对软件进行更新。
发明内容
本发明提出一种远程快速实现用电信息采集终端软件更新的方法及系统,以解决现有的用电信息采集终端软件更新繁琐、不能自动和快速的对软件进行更新的问题。
为了解决上述问题,根据本发明的一个方面,提供了一种远程快速实现用电信息采集终端软件更新的方法,其特征在于,所述方法包括:
利用远程网络通信建立服务器和终端设备之间的远程通信链路,以获取所述终端设备上的在运行软件包的控制信息;
根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包;
对与所述在运行软件包匹配的更新软件包进行解包,以获取与所述在运行软件包匹配的更新软件包的控制信息;
将与所述在运行软件包匹配的更新软件包的控制信息和所述在运行软件包的控制信息进行比对获取差异信息,并根据差异信息从与所述在运行软件包匹配的更新软件包中提取待升级的程序文件以生成补丁文件;
将所述补丁文件通过所述远程通信链路下发至所述终端设备,以使所述终端设备根据升级处理逻辑完成软件包更新。
优选地,其中所述控制信息包括:软件包的包类型、软件包中所有程序文件的文件描述信息、软件包的版本信息,以及循环冗余crc校验和。
优选地,其中所述根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包,包括:
读取服务器中所有更新软件包的文件头信息,从所述文件头信息中提取每个更新软件包的包类型;
将每个更新软件包的包类型和所述在运行软件包的包类型进行比对,确定与所述在运行软件包匹配的更新软件包。
优选地,其中所述方法还包括:
将所述在运行软件包的控制信息存储于第一临时文件中,将与所述在运行软件包匹配的更新软件包的控制信息存储于第二临时文件中。
优选地,其中所述方法还包括:
在所述第一临时文件中提取在运行软件包的版本信息,在所述第二临时文件中提取与所述在运行软件包匹配的更新软件包的版本信息,并根据预设的补丁文件命名规则,对所述补丁文件命名,以能够根据补丁文件名称在终端设备和/或服务器端快速识别补丁文件的版本信息。
优选地,其中所述命名规则为:将在运行软件包的版本信息和与在运行软件包匹配的更新软件包的版本信息进行拼接,以确定补丁文件名称。
优选地,其中所述终端设备根据接收的服务器端下发的软件版本更新探测消息上报在运行软件包的控制信息。
优选地,其中所述软件版本更新探测消息为:软件版本升级探测消息或软件版本回滚探测消息。
根据本发明的另一个方面,提供了一种远程快速实现用电信息采集终端软件更新的系统,其特征在于,所述系统包括:
第一控制信息获取单元,用于利用远程网络通信建立服务器和终端设备之间的远程通信链路,以获取所述终端设备上的在运行软件包的控制信息;
更新软件包确定单元,用于根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包;
第二控制信息获取单元,用于对与所述在运行软件包匹配的更新软件包进行解包,以获取与所述在运行软件包匹配的更新软件包的控制信息;
补丁文件生成单元,用于将与所述在运行软件包匹配的更新软件包的控制信息和所述在运行软件包的控制信息进行比对获取差异信息,并根据差异信息从与所述在运行软件包匹配的更新软件包中提取待升级的程序文件以生成补丁文件;
软件包更新单元,用于将所述补丁文件通过所述远程通信链路下发至所述终端设备,以使所述终端设备根据升级处理逻辑完成软件包更新。
优选地,其中所述控制信息包括:软件包的包类型、软件包中所有程序文件的文件描述信息、软件包的版本信息,以及循环冗余crc校验和。
优选地,其中所述更新软件包确定单元,根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包,包括:
更新软件包的包类型确定模块,用于读取服务器中所有更新软件包的文件头信息,从所述文件头信息中提取每个更新软件包的包类型;
更新软件包匹配模块,用于将每个更新软件包的包类型和所述在运行软件包的包类型进行比对,确定与所述在运行软件包匹配的更新软件包。
优选地,其中所述系统还包括:
存储单元,用于将所述在运行软件包的控制信息存储于第一临时文件中,将与所述在运行软件包匹配的更新软件包的控制信息存储于第二临时文件中。
优选地,其中所述系统还包括:
补丁文件命名单元,用于在所述第一临时文件中提取在运行软件包的版本信息,在所述第二临时文件中提取与所述在运行软件包匹配的更新软件包的版本信息,并根据预设的补丁文件命名规则,对所述补丁文件命名,以能够根据补丁文件名称在终端设备和/或服务器端快速识别补丁文件的版本信息。
优选地,其中所述命名规则为:将在运行软件包的版本信息和与在运行软件包匹配的更新软件包的版本信息进行拼接,以确定补丁文件名称。
优选地,其中在所述第一控制信息获取单元,所述终端设备根据接收的服务器端下发的软件版本更新探测消息上报在运行软件包的控制信息。
优选地,其中所述软件版本更新探测消息为:软件版本升级探测消息或软件版本回滚探测消息。
本发明提供了一种远程快速实现用电信息采集终端软件更新的方法及系统,建立服务器和终端设备之间的远程通信链路;根据在运行软件包的控制信息确定匹配的更新软件包,并进行解包获取更新软件包的控制信息;将匹配的更新软件包的控制信息和在运行软件包的控制信息进行比对获取差异信息,并根据差异信息生成补丁文件;将补丁文件通过所述远程通信链路下发至所述终端设备,以使所述终端设备根据升级处理逻辑完成软件包更新。本发明降低了终端厂家软件版本管理的复杂度,在进行软件更新时,只需要发布唯一的整体更新软件包即可,不需要额外制作专用升级包;通过动态获取在运行软件包的控制信息,并与匹配的更新软件包的控制文件进行比较以动态生成补丁文件,并快速实施软件更新,相比传统的更新方案,明显地减少了网络传输数据量,提高了升级效率;同时,本发明既可以从较低的软件包版本升级为较高的软件包版本,也可以从较高的软件包版本回退到较低的软件包版本,有效地解决了软件包版本无法回滚的问题。
附图说明
通过参考下面的附图,可以更为完整地理解本发明的示例性实施方式:
图1为根据本发明实施方式的远程快速实现用电信息采集终端软件更新的方法100的流程图;
图2为根据本发明实施方式的标准的软件包的结构示意图;
图3为根据本发明实施方式的自动生成软件补丁并进行软件更新的流程示意图;以及
图4为根据本发明实施方式的远程快速实现用电信息采集终端软件更新的系统400的结构示意图。
具体实施方式
现在参考附图介绍本发明的示例性实施方式,然而,本发明可以用许多不同的形式来实施,并且不局限于此处描述的实施例,提供这些实施例是为了详尽地且完全地公开本发明,并且向所属技术领域的技术人员充分传达本发明的范围。对于表示在附图中的示例性实施方式中的术语并不是对本发明的限定。在附图中,相同的单元/元件使用相同的附图标记。
除非另有说明,此处使用的术语(包括科技术语)对所属技术领域的技术人员具有通常的理解含义。另外,可以理解的是,以通常使用的词典限定的术语,应当被理解为与其相关领域的语境具有一致的含义,而不应该被理解为理想化的或过于正式的意义。
图1为根据本发明实施方式的远程快速实现用电信息采集终端软件更新的方法100的流程图。如图1所示,本发明的实施方式提供的远程快速实现用电信息采集终端软件更新的方法降低了终端厂家软件版本管理的复杂度,在进行软件更新时,只需要发布唯一的整体更新软件包即可,不需要额外制作专用升级包;通过动态获取在运行软件包的控制信息,并与匹配的更新软件包的控制文件进行比较以动态生成补丁文件,并快速实施软件更新,相比传统的更新方案,明显地减少了网络传输数据量,提高了升级效率;同时,本发明既可以从较低的软件包版本升级为较高的软件包版本,也可以从较高的软件包版本回退到较低的软件包版本,有效地解决了软件包版本无法回滚的问题。本发明的实施方式提供的远程快速实现用电信息采集终端软件更新的方法100从步骤101处开始,在步骤101利用远程网络通信建立服务器和终端设备之间的远程通信链路,以获取所述终端设备上的在运行软件包的控制信息。
优选地,其中所述控制信息包括:软件包的包类型、软件包中所有程序文件的文件描述信息、软件包的版本信息,以及循环冗余crc校验和。
优选地,其中所述终端设备根据接收的服务器端下发的软件版本更新探测消息上报在运行软件包的控制信息。
优选地,其中所述软件版本更新探测消息为:软件版本升级探测消息或软件版本回滚探测消息。
优选地,在步骤102根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包。
优选地,其中所述根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包,包括:
读取服务器中所有更新软件包的文件头信息,从所述文件头信息中提取每个更新软件包的包类型;
将每个更新软件包的包类型和所述在运行软件包的包类型进行比对,确定与所述在运行软件包匹配的更新软件包。
优选地,在步骤103对与所述在运行软件包匹配的更新软件包进行解包,以获取与所述在运行软件包匹配的更新软件包的控制信息。
优选地,其中所述方法还包括:
将所述在运行软件包的控制信息存储于第一临时文件中,将与所述在运行软件包匹配的更新软件包的控制信息存储于第二临时文件中。
在本发明的实施方式中,利用PACKn表示更新软件包,所述更新软件包存储于服务器中,所述更新软件包既可以为相比于在运行软件包更高版本的软件包,也可以为性比喻在运行软件包低版本的软件包;利用PACKr表示在终端设备上的在运行软件包。在进行软件更新时,通过远程网络通信,在服务器与终端设备之间建立升级逻辑链路,即涉及一种时序的交互逻辑,终端设备根据接收的服务器端下发的软件版本更新探测消息上报在运行软件包的控制信息。其中,所述控制信息包括:软件包的包类型、软件包中所有程序文件的文件描述信息、软件包的版本信息,以及循环冗余crc校验和。即通过时序的交互逻辑提取出PACKr的所有控制信息,包括PACKr的包类型、PACKr中包含的所有程序文件的文件描述信息、版本信息和crc校验和,并存于第一临时文件rPackInfoTmp.txt中。服务器端根据rPackInfoTmp.txt中提取出的包类型rPackType,对升级目录下所有更新软件包进行文件头信息读取,并将从文件头读取的包类型nPackType与rPackType进行比对,直至匹配到相同的大包类型,从而确定与所述在运行软件包PACKr匹配的更新软件包PACKn。然后,对与终端设备在运行软件包匹配的更新软件包PACKn进行解包,获取PACKn的控制信息,包括:PACKn的包类型、PACKn包含的所有程序文件的文件描述信息、版本信息和crc校验和,并存于第二临时文件nPackInfoTmp.txt中。
图2为根据本发明实施方式的标准的软件包的结构示意图。如图2所示,一个标准的软件包包括:大包头描述结构和大包文件体,所示大包文件体由软件包中的每个程序文件组成。其中,大包头描述结构中包括每个程序文件的描述结构,每个程序文件包括:文件头描述结构和文件体,文件头描述结构包括该程序文件的文件描述信息。
优选地,在步骤104将与所述在运行软件包匹配的更新软件包的控制信息和所述在运行软件包的控制信息进行比对获取差异信息,并根据差异信息从与所述在运行软件包匹配的更新软件包中提取待升级的程序文件以生成补丁文件。
优选地,在步骤105将所述补丁文件通过所述远程通信链路下发至所述终端设备,以使所述终端设备根据升级处理逻辑完成软件包更新。
优选地,其中所述方法还包括:
在所述第一临时文件中提取在运行软件包的版本信息,在所述第二临时文件中提取与所述在运行软件包匹配的更新软件包的版本信息,并根据预设的补丁文件命名规则,对所述补丁文件命名,以能够根据补丁文件名称在终端设备和/或服务器端快速识别补丁文件的版本信息。
优选地,其中所述命名规则为:将在运行软件包的版本信息和与在运行软件包匹配的更新软件包的版本信息进行拼接,以确定补丁文件名称。
在本发明的实施方式中,通过比对单元将rPackInfoTmp.txt与nPackInfoTmp.txt中的差异信息提取出来,并生成补丁文件,命名为patch_RxxNxx。其中,Rxx代表在运行终端软件包的版本信息,从rPackInfoTmp.txt中提取。Nxx代表更新软件包的版本信息,从nPackInfoTmp.txt中提取。比对单元为一种专业版本信息比对工具,为一个可执行工具程序。补丁文件patch_RxxNxx包含了更新软件包PACKn与远程侧在运行软件包PACNr的所有差异点,通常情况下补丁文件的规模远远小于整个软件包的大小。然后,通过远程升级逻辑链路,服务器向终端设备下发升级补丁文件patch_RxxNxx,在终端设备侧获得patch_RxxNxx后,启用升级处理逻辑完成软件包升级。由于patch_RxxNxx的轻量级特征,远程传输的效率将会大幅度提高。同时,根据升级后的终端设备上包含补丁版本信息RxxNxx,能够方便快速地在终端设备界面或服务器端识别版本补丁信息。
以下具体举例说明本发明的实施方式
在本发明的实施方式中,以图2所述的标准的软件包结构为前提。其中,由大包头描述结构确定大包的整体属性,包括大包版本信息、大包类型、大包数据crc校验和等。大包文件体构成了大包的主体,由所有程序文件拼接而成。其中,每个程序文件在大包中具有单独的文件头描述结构,主要用于确定每个程序文件的版本信息、唯一的文件标识ID、crc校验和、文件长度信息、文件描述信息等。
图3为根据本发明实施方式的自动生成软件补丁并进行软件更新的流程示意图。如图3所示,实施例的拓扑结构包括主站和多个分布式部署的用电信息采集终端,以远程通信链路进行交互。其中主站以M1表示,即服务器端,终端以T1到Tn表示,交互过程或逻辑以P1到P7表示。
在本发明实施方式的远程更新软件的过程中,首先将更新软件包上传至主站升级目录M2下,更新软件包以PACKn表示,在主站的升级目录下可以放置任意多个更新软件包。主站通过更新命令触发对本台区的终端设备的扫描,即通过远程通信链路对本台区终端设备进行探测,以获取终端设备在运行软件包版本信息,如P4所示。
以图2T1终端为例,终端在运行软件包为PACKr,PACKr具有图2所示意的标准化大包结构,当终端接收到主站下发的升级探测消息时,终端上报PACKr的关键控制信息,如PACKr的包类型、包版本、crc校验和以及所有程序文件的描述信息,如P6所示。
主站获取到终端设备的上报消息后,启动主站的比对单元M3,遍历主站升级目录下所有的更新软件包,解析更新软件包的包头描述结构,提取出包类型字段,如图P1所示。其中,M3为本发明的实施方式所涉及的一种专用版本信息比对工具,是一个可执行工具程序。
然后,通过比对单元M3将更新软件包的包类型与终端设备上报的PACKr的包类型进行匹配,当匹配一致时即确定了主站升级目录下与终端设备唯一对应的更新软件包PACKn,即自动地、动态地确定了更新软件包PACKn。通过比对单元M3对更新软件包PACKn进行解包,并与终端设备上报的PACKr的版本控制信息比对,从而从PACKn中提取出需要更新的部分程序文件,并拼接为一个轻量级的补丁文件,补丁文件如图3中patch_RxxNxx所示。生成的patch_RxxNxx文件包含了更新软件包PACKn与远程侧在运行软件包PACNr的所有差异点。
最后,通过远程升级逻辑链路,主站向终端设备下发升级补丁文件patch_RxxNxx,在终端设备侧获得patch_RxxNxx后,启用升级处理逻辑完成软件包升级,如P7所示。
在通常此情况下,补丁文件的规模远远小于整个软件包的大小,由于patch_RxxNxx的轻量级特征,远程传输的效率大幅度提高。同时,升级后的终端设备上包含补丁版本信息RxxNxx,便于在终端设备界面或主站快速识别版本补丁信息。
图4为根据本发明实施方式的远程快速实现用电信息采集终端软件更新的系统400的结构示意图。如图4所示,本发明的实施方式提供的远程快速实现用电信息采集终端软件更新的系统400,包括:第一控制信息获取单元401、更新软件包确定单元402、第二控制信息获取单元403、补丁文件生成单元404和软件包更新单元405。优选地,所述第一控制信息获取单元401,用于利用远程网络通信建立服务器和终端设备之间的远程通信链路,以获取所述终端设备上的在运行软件包的控制信息。
优选地,其中所述控制信息包括:软件包的包类型、软件包中所有程序文件的文件描述信息、软件包的版本信息,以及循环冗余crc校验和。
优选地,其中在所述第一控制信息获取单元401,所述终端设备根据接收的服务器端下发的软件版本更新探测消息上报在运行软件包的控制信息。优选地,其中所述软件版本更新探测消息为:软件版本升级探测消息或软件版本回滚探测消息。
优选地,所述更新软件包确定单元402,用于根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包。
优选地,其中所述更新软件包确定单元402,根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包,包括:更新软件包的包类型确定模块4021和更新软件包匹配模块4022。所述更新软件包的包类型确定模块4021,用于读取服务器中所有更新软件包的文件头信息,从所述文件头信息中提取每个更新软件包的包类型。所述更新软件包匹配模块4022,用于将每个更新软件包的包类型和所述在运行软件包的包类型进行比对,确定与所述在运行软件包匹配的更新软件包。
优选地,所述第二控制信息获取单元403,用于对与所述在运行软件包匹配的更新软件包进行解包,以获取与所述在运行软件包匹配的更新软件包的控制信息。
优选地,所述补丁文件生成单元404,用于将与所述在运行软件包匹配的更新软件包的控制信息和所述在运行软件包的控制信息进行比对获取差异信息,并根据差异信息从与所述在运行软件包匹配的更新软件包中提取待升级的程序文件以生成补丁文件。
优选地,其中所述系统还包括:存储单元,用于将所述在运行软件包的控制信息存储于第一临时文件中,将与所述在运行软件包匹配的更新软件包的控制信息存储于第二临时文件中。
优选地,其中所述系统还包括:补丁文件命名单元,用于在所述第一临时文件中提取在运行软件包的版本信息,在所述第二临时文件中提取与所述在运行软件包匹配的更新软件包的版本信息,并根据预设的补丁文件命名规则,对所述补丁文件命名,以能够根据补丁文件名称在终端设备和/或服务器端快速识别补丁文件的版本信息。优选地,其中所述命名规则为:将在运行软件包的版本信息和与在运行软件包匹配的更新软件包的版本信息进行拼接,以确定补丁文件名称。
优选地,所述软件包更新单元405,用于将所述补丁文件通过所述远程通信链路下发至所述终端设备,以使所述终端设备根据升级处理逻辑完成软件包更新。
本发明的实施例的用于远程快速实现用电信息采集终端软件更新的系统400与本发明的另一个实施例的用于一种远程快速实现用电信息采集终端软件更新的方法100相对应,在此不再赘述。
已经通过参考少量实施方式描述了本发明。然而,本领域技术人员所公知的,正如附带的专利权利要求所限定的,除了本发明以上公开的其他的实施例等同地落在本发明的范围内。
通常地,在权利要求中使用的所有术语都根据他们在技术领域的通常含义被解释,除非在其中被另外明确地定义。所有的参考“一个/所述/该[装置、组件等]”都被开放地解释为所述装置、组件等中的至少一个实例,除非另外明确地说明。这里公开的任何方法的步骤都没必要以公开的准确的顺序运行,除非明确地说明。

Claims (16)

1.一种远程快速实现用电信息采集终端软件更新的方法,其特征在于,所述方法包括:
利用远程网络通信建立服务器和终端设备之间的远程通信链路,以获取所述终端设备上的在运行软件包的控制信息;
根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包;
对与所述在运行软件包匹配的更新软件包进行解包,以获取与所述在运行软件包匹配的更新软件包的控制信息;
将与所述在运行软件包匹配的更新软件包的控制信息和所述在运行软件包的控制信息进行比对获取差异信息,并根据差异信息从与所述在运行软件包匹配的更新软件包中提取待升级的程序文件以生成补丁文件;
将所述补丁文件通过所述远程通信链路下发至所述终端设备,以使所述终端设备根据升级处理逻辑完成软件包更新。
2.根据权利要求1所述的方法,其特征在于,所述控制信息包括:软件包的包类型、软件包中所有程序文件的文件描述信息、软件包的版本信息,以及循环冗余crc校验和。
3.根据权利要求2所述的方法,其特征在于,所述根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包,包括:
读取服务器中所有更新软件包的文件头信息,从所述文件头信息中提取每个更新软件包的包类型;
将每个更新软件包的包类型和所述在运行软件包的包类型进行比对,确定与所述在运行软件包匹配的更新软件包。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
将所述在运行软件包的控制信息存储于第一临时文件中,将与所述在运行软件包匹配的更新软件包的控制信息存储于第二临时文件中。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
在所述第一临时文件中提取在运行软件包的版本信息,在所述第二临时文件中提取与所述在运行软件包匹配的更新软件包的版本信息,并根据预设的补丁文件命名规则,对所述补丁文件命名,以能够根据补丁文件名称在终端设备和/或服务器端快速识别补丁文件的版本信息。
6.根据权利要求5所述的方法,其特征在于,所述命名规则为:将在运行软件包的版本信息和与在运行软件包匹配的更新软件包的版本信息进行拼接,以确定补丁文件名称。
7.根据权利要求1-6中任一项所述的方法,其特征在于,所述终端设备根据接收的服务器端下发的软件版本更新探测消息上报在运行软件包的控制信息。
8.根据权利要求7所述的方法,其特征在于,所述软件版本更新探测消息为:软件版本升级探测消息或软件版本回滚探测消息。
9.一种远程快速实现用电信息采集终端软件更新的系统,其特征在于,所述系统包括:
第一控制信息获取单元,用于利用远程网络通信建立服务器和终端设备之间的远程通信链路,以获取所述终端设备上的在运行软件包的控制信息;
更新软件包确定单元,用于根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包;
第二控制信息获取单元,用于对与所述在运行软件包匹配的更新软件包进行解包,以获取与所述在运行软件包匹配的更新软件包的控制信息;
补丁文件生成单元,用于将与所述在运行软件包匹配的更新软件包的控制信息和所述在运行软件包的控制信息进行比对获取差异信息,并根据差异信息从与所述在运行软件包匹配的更新软件包中提取待升级的程序文件以生成补丁文件;
软件包更新单元,用于将所述补丁文件通过所述远程通信链路下发至所述终端设备,以使所述终端设备根据升级处理逻辑完成软件包更新。
10.根据权利要求9所述的系统,其特征在于,所述控制信息包括:软件包的包类型、软件包中所有程序文件的文件描述信息、软件包的版本信息,以及循环冗余crc校验和。
11.根据权利要求10所述的系统,其特征在于,所述更新软件包确定单元,根据所述在运行软件包的控制信息,确定与所述在运行软件包匹配的更新软件包,包括:
更新软件包的包类型确定模块,用于读取服务器中所有更新软件包的文件头信息,从所述文件头信息中提取每个更新软件包的包类型;
更新软件包匹配模块,用于将每个更新软件包的包类型和所述在运行软件包的包类型进行比对,确定与所述在运行软件包匹配的更新软件包。
12.根据权利要求10所述的系统,其特征在于,所述系统还包括:
存储单元,用于将所述在运行软件包的控制信息存储于第一临时文件中,将与所述在运行软件包匹配的更新软件包的控制信息存储于第二临时文件中。
13.根据权利要求12所述的系统,其特征在于,所述系统还包括:
补丁文件命名单元,用于在所述第一临时文件中提取在运行软件包的版本信息,在所述第二临时文件中提取与所述在运行软件包匹配的更新软件包的版本信息,并根据预设的补丁文件命名规则,对所述补丁文件命名,以能够根据补丁文件名称在终端设备和/或服务器端快速识别补丁文件的版本信息。
14.根据权利要求13所述的系统,其特征在于,所述命名规则为:将在运行软件包的版本信息和与在运行软件包匹配的更新软件包的版本信息进行拼接,以确定补丁文件名称。
15.根据权利要求9-14中任一项所述的系统,其特征在于,在所述第一控制信息获取单元,所述终端设备根据接收的服务器端下发的软件版本更新探测消息上报在运行软件包的控制信息。
16.根据权利要求15所述的系统,其特征在于,所述软件版本更新探测消息为:软件版本升级探测消息或软件版本回滚探测消息。
CN201811353041.3A 2018-11-14 2018-11-14 一种远程快速实现用电信息采集终端软件更新的方法及系统 Pending CN109656588A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811353041.3A CN109656588A (zh) 2018-11-14 2018-11-14 一种远程快速实现用电信息采集终端软件更新的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811353041.3A CN109656588A (zh) 2018-11-14 2018-11-14 一种远程快速实现用电信息采集终端软件更新的方法及系统

Publications (1)

Publication Number Publication Date
CN109656588A true CN109656588A (zh) 2019-04-19

Family

ID=66112056

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811353041.3A Pending CN109656588A (zh) 2018-11-14 2018-11-14 一种远程快速实现用电信息采集终端软件更新的方法及系统

Country Status (1)

Country Link
CN (1) CN109656588A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111290775A (zh) * 2020-04-02 2020-06-16 麒麟软件有限公司 一种Linux系统软件包类型自动分类方法及系统
CN113312066A (zh) * 2020-02-27 2021-08-27 福建省天奕网络科技有限公司 动态热更新方法、存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699408A (zh) * 2013-12-12 2014-04-02 乐视网信息技术(北京)股份有限公司 一种软件升级的方法和设备
US20150301823A1 (en) * 2014-04-21 2015-10-22 Sony Computer Entertainment Inc. Information Processing Device, Difference Information Generating Device, Program, And Recording Medium.
CN105468396A (zh) * 2014-09-11 2016-04-06 深圳Tcl数字技术有限公司 差分包生成方法、升级方法、生成装置及Linux终端
CN105573772A (zh) * 2014-10-17 2016-05-11 中兴通讯股份有限公司 一种基站软件版本管理方法和设备
CN108111331A (zh) * 2017-11-06 2018-06-01 北京趣拿软件科技有限公司 更新数据包的获取方法、装置、存储介质、处理器及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103699408A (zh) * 2013-12-12 2014-04-02 乐视网信息技术(北京)股份有限公司 一种软件升级的方法和设备
US20150301823A1 (en) * 2014-04-21 2015-10-22 Sony Computer Entertainment Inc. Information Processing Device, Difference Information Generating Device, Program, And Recording Medium.
CN105468396A (zh) * 2014-09-11 2016-04-06 深圳Tcl数字技术有限公司 差分包生成方法、升级方法、生成装置及Linux终端
CN105573772A (zh) * 2014-10-17 2016-05-11 中兴通讯股份有限公司 一种基站软件版本管理方法和设备
CN108111331A (zh) * 2017-11-06 2018-06-01 北京趣拿软件科技有限公司 更新数据包的获取方法、装置、存储介质、处理器及系统

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
李刚;周毅波;卿柏元;: "智能电力设备在线远程软件升级新方法" *
王伟红;周淦林;: "电能信息采集系统终端软件远程升级方案的设计与实现" *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113312066A (zh) * 2020-02-27 2021-08-27 福建省天奕网络科技有限公司 动态热更新方法、存储介质
CN113312066B (zh) * 2020-02-27 2022-07-26 福建省天奕网络科技有限公司 动态热更新方法、存储介质
CN111290775A (zh) * 2020-04-02 2020-06-16 麒麟软件有限公司 一种Linux系统软件包类型自动分类方法及系统

Similar Documents

Publication Publication Date Title
CN103678319B (zh) 资源文件更新方法、装置和系统及服务器
JP7126174B2 (ja) ブロックチェーンおよびオフチェーン装置の連携のための検証システムおよび方法
US7730028B2 (en) Schema updating for synchronizing databases connected by wireless interface
US8918447B2 (en) Methods, apparatus, systems and computer readable mediums for use in sharing information between entities
US8522206B2 (en) Selective delta validation of a shared artifact
CN103235820B (zh) 一种集群系统中数据存储方法与装置
CN109800207B (zh) 日志解析方法、装置、设备及计算机可读存储介质
CN102722540B (zh) 实时内存数据库系统中数据处理方法及装置
WO2008016560A1 (en) Two-way and multi-master synchronization over web syndications
CN105808273B (zh) 软件升级方法和软件升级装置
CN104699511B (zh) 插件升级方法及装置
CN110557452B (zh) 区块链的节点管理方法、装置、存储介质和计算机设备
CN107025108B (zh) 从源代码管理(scm)系统将分级数据导出到产品生命周期管理(plm)系统
CN106302592A (zh) 终端应用的更新方法、服务器和终端
US20070143330A1 (en) Processing an XML schema
CN109547234A (zh) 一种数据处理、上报方法、装置、设备和存储介质
CN109656588A (zh) 一种远程快速实现用电信息采集终端软件更新的方法及系统
CN107193917A (zh) 基于iid的全站系统配置文件无损数据更新方法
CN101977217A (zh) Widget更新方法、系统、Widget客户端及Widget服务器
CN114374701B (zh) 一种多级联动人工智能平台样本模型透明共享装置
CN111414417B (zh) 一种基于区块链的视频版权管理方法
CN113761016A (zh) 数据查询方法、装置、设备及存储介质
CN111949634A (zh) 一种区块链数据同步迁移的方法
CN103220336B (zh) 一种文件同步中向量时钟的实现方法及系统
CN109726213A (zh) 一种程序代码转换方法、装置、介质和计算设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination