CN102325189A - 嵌入式系统的数据远程升级方法 - Google Patents

嵌入式系统的数据远程升级方法 Download PDF

Info

Publication number
CN102325189A
CN102325189A CN201110277708A CN201110277708A CN102325189A CN 102325189 A CN102325189 A CN 102325189A CN 201110277708 A CN201110277708 A CN 201110277708A CN 201110277708 A CN201110277708 A CN 201110277708A CN 102325189 A CN102325189 A CN 102325189A
Authority
CN
China
Prior art keywords
subfile
difference
embedded system
upgrading
data
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
CN201110277708A
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.)
Jiangsu Posts and Telecommunications Planning and Designing Institute Co Ltd
Original Assignee
Jiangsu Posts and Telecommunications Planning and Designing Institute 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 Jiangsu Posts and Telecommunications Planning and Designing Institute Co Ltd filed Critical Jiangsu Posts and Telecommunications Planning and Designing Institute Co Ltd
Priority to CN201110277708A priority Critical patent/CN102325189A/zh
Publication of CN102325189A publication Critical patent/CN102325189A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

本发明公开了一种嵌入式系统的数据远程升级方法,在本地服务器和一个远程嵌入式系统之间采用差异升级方式进行数据升级;所述差异升级方式指将嵌入式系统内现有数据和本地服务器的新数据按照一定大小分成多个子文件,并进行差异对比形成差异子文件和版本控制文件,根据版本控制文件对差异的子文件进行升级,相同的子文件不升级。它解决了目前嵌入式系统远程升级过程中速度慢、数据量大、传输不可靠,不能满足实际应用需要等问题。具有方法简单,使用方便,效率高,占用通信资源少等优点。

Description

嵌入式系统的数据远程升级方法
技术领域
本发明涉及一种嵌入式系统的数据远程升级方法,特别是一种嵌入式系统的数据的差异升级和断点续传的升级方法。
背景技术
现有嵌入式系统程序升级的方法,比如以太网远程升级、U盘本地升级都是用新程序整个取代嵌入式节点里面的现有程序。随着无线网络的发展,嵌入式无线节点的增多,如何安全可靠的升级嵌入式无线节点程序成为了一个新的课题。现有数据方法已经不适合无线网络数据通信或程序升级。嵌入式无线节点自身通信的特殊性,比如信号不稳定、通讯数据包数据量小,都要求尽量减少升级程序的大小,并且当受到干扰造成升级失败时能在原有升级的基础上继续升级,提高程序升级的效率和可靠性。
发明内容
发明目的:本发明所要解决的技术问题是针对现有技术的不足,提供一种嵌入式系统的数据远程升级方法,解决目前嵌入式无线节点缺少有效的程序(数据)升级方法,不能满足实际应用的问题。
为了解决上述技术问题,本发明公开了一种嵌入式系统的数据远程升级方法,在本地服务器和一个远程嵌入式系统之间采用差异升级方式进行数据升级;
所述差异升级方式指将嵌入式系统内现有数据和本地服务器的新数据按照一定大小分成多个子文件,并进行差异对比形成差异子文件和版本控制文件,根据版本控制文件对差异的子文件进行升级,相同的子文件不升级。
本发明中,所述版本控制文件按照二进制编码方式映射各个差异子文件,映射方法如下:
所述版本控制文件的每一个二进制bit位对应着本地服务器新数据中的一个子文件;
用二进制bit位0表示本地服务器新数据中的子文件和嵌入式系统内现有数据中的子文件相同,不需要升级;用二进制bit位1表示本地服务器的新数据中的子文件和嵌入式系统内现有数据中的子文件不同,需要升级;
或者,
用二进制bit位1表示本地服务器新数据中的子文件和嵌入式系统内现有数据中的子文件相同,不需要升级;用二进制bit位0表示本地服务器的新数据中的子文件和嵌入式系统内现有数据中的子文件不同,需要升级。
本发明中,数据远程升级开始时,嵌入式系统获取新的版本控制文件并和自身的版本控制文件进行bit位扫描对比,扫描顺序可以从前往后正序扫描,也可以从后往前倒序扫描,根据该bit位的值判断是该bit位映射的子文件是否是差异子文件,如果是则进行升级,否则不升级。
本发明中,根据对版本控制文件二进制扫描的结果,嵌入式系统获取本地服务器上的差异子文件,获取成功后嵌入式系统修改自身的版本控制文件,表示该差异子文件已经和本地服务器上的差异子文件相同。
本发明中,在本地服务器和一个远程嵌入式系统之间采用断点续传方式进行数据升级;
所述断点续传方式指如果本次升级失败只升级了部分差异子文件,下一次升级时,已成功升级差异子文件将不再升级,仅仅升级未完成差异子文件。
本发明中,如果一次升级失败,只升级了部分差异子文件,已升级的部分差异子文件对应在版本控制文件中对应的bit位已经被修改,下次升级进行bit位扫描时将跳过该bit位,不对该bit位对应的差异子文件升级。
有益效果:本发明方法简单,使用方便,效率高,占用资源少等优点。提高了传统嵌入式系统程序升级方法的效率,能安全可靠的升级嵌入式无线节点程序。同时本发明同样能提高传统的以太网远程升级、U盘本地升级的升级效率和可靠性。
附图说明
下面结合附图和具体实施方式对本发明做更进一步的具体说明,本发明的上述和/或其他方面的优点将会变得更加清楚。
图1为实施例流程图。
具体实施方式
本发明公开了一种嵌入式系统的数据远程升级方法,在本地服务器和一个远程嵌入式系统之间采用差异升级方式进行数据升级;所述差异升级方式指将嵌入式系统内现有数据和本地服务器的新数据按照一定大小分成多个子文件,并进行差异对比形成差异子文件和版本控制文件,根据版本控制文件对差异的子文件进行升级,相同的子文件不升级。
本发明中,所述版本控制文件按照二进制编码方式映射各个差异子文件,映射方法如下:所述版本控制文件的每一个二进制bit位对应着本地服务器新数据中的一个子文件;
用二进制bit位0表示本地服务器新数据中的子文件和嵌入式系统内现有数据中的子文件相同,不需要升级;用二进制bit位1表示本地服务器的新数据中的子文件和嵌入式系统内现有数据中的子文件不同,需要升级;
或者,
用二进制bit位1表示本地服务器新数据中的子文件和嵌入式系统内现有数据中的子文件相同,不需要升级;用二进制bit位0表示本地服务器的新数据中的子文件和嵌入式系统内现有数据中的子文件不同,需要升级。
本发明中,数据远程升级开始时,嵌入式系统获取新的版本控制文件并和自身的版本控制文件进行bit位扫描对比,扫描顺序可以从前往后正序扫描,也可以从后往前倒序扫描,根据该bit位的值判断是该bit位映射的子文件是否是差异子文件,如果是则进行升级,否则不升级。
本发明中,根据对版本控制文件二进制扫描的结果,嵌入式系统获取本地服务器上的差异子文件,获取成功后嵌入式系统修改自身的版本控制文件,表示该差异子文件已经和本地服务器上的差异子文件相同。
本发明中,在本地服务器和一个远程嵌入式系统之间采用断点续传方式进行数据升级;
所述断点续传方式指如果本次升级失败只升级了部分差异子文件,下一次升级时,已成功升级差异子文件将不再升级,仅仅升级未完成差异子文件。
本发明中,如果一次升级失败,只升级了部分差异子文件,已升级的部分差异子文件对应在版本控制文件中对应的bit位已经被修改,下次升级进行bit位扫描时将跳过该bit位,不对该bit位对应的差异子文件升级。
实施例
如图1所示,本实施例是在本地PC服务器和远程GPRS嵌入式终端之间实现。
prog为GPRS嵌入式终端上运行程序,大小为72K byte; ver为GPRS嵌入式终端上的版本控制文件,预知文件内容为0x00, 0x00, .., 0x00(共30个,初始化的数量和升级的最大程序大小有关)。
(一)差异升级的实现过程。
A:如图1中步骤1,在本地服务器上将prog和progNew按照10K大小分成多个子文件对比后,形成3个差异子文件分别是prog007, prog008, prog009;同时形成版本控制文件verNew,除去固定的文件头和文件尾,0x80,0x03,0x00,, …,0x00(共30个字节), 其中的二进制bit 1和形成的差异子文件映射。
B:通过短信发送远程唤醒升级帧,启动嵌入式系统升级程序,如图1中步骤2;嵌入式系统升级程序首先将嵌入式终端的版本控制文件ver全部bit位清0,然后嵌入式系统远程获取本地PC服务器上的版本控制文件verNew,如图1中步骤3;
C:嵌入式系统获取版本控制文件verNew后,将verNew和ver按bit位进行扫描比较。本例中采用倒续扫描,因为后面的28个0x00字节相同,所以被跳过。第一个差异bit为0x03(00000011b)的最低位bit为1,这个bit位1表示需要获取差异子文件prog008,如图1中步骤4;嵌入式系统远程获取本地PC服务器差异子文件prog008,如图1中步骤5,如果嵌入式系统远程获取本地PC服务器差异子文件不成功,则返回步骤2;获取该文件成功后, 将文件ver的内容修改为0x00, 0x01, .., 0x00(共30个),如图1中步骤6。
D:第二个差异bit为0x02(00000010b)的第二位bit1,这个bit位1表示需要获取差异子文件prog009,获取该文件成功后,将文件ver的内容修改为0x00x, 0x03, .., 0x00(共30个)。因为尚有差异子文件需要升级,所以本过程重复图1中步骤4、步骤5和步骤6。
E:第三个差异bit为0x80(10000000b)的最高位bit1,这个bit位1表示需要获取差异子文件prog.007,获取该文件成功后,将文件ver的内容修改为0x80, 0x03, .., 0x00(共30个)。因为尚有差异子文件需要升级,所以本过程重复图1中步骤4、步骤5和步骤6。
F:至此,步骤4中判断无差异子文件,即全部差异子文件升级完毕,程序升级成功,升级程序退出,如图1中步骤7。
(二)断点续传的实现过程。
假定程序升级过程中受到干扰,第二个差异子文件prog009升级失败,此时版本控制文件ver的内容更新为0x00, 0x01, .., 0x00(共30个)。
通过短信发送远程唤醒升级帧,启动嵌入式系统升级程序,如图1中步骤2;
嵌入式系统升级程序首先将嵌入式终端的版本控制文件ver全部bit位清0,然后嵌入式系统远程获取本地PC服务器上的版本控制文件verNew,如图1中步骤3;
嵌入式系统获取版本控制文件verNew后,将verNew和ver按bit位进行扫描比较。第一个差异bit为0x02(00000010b)的第2个bit为1,这个bit位1表示需要获取差异子文件prog009,如图1中步骤4;
升级程序从步骤4开始,循环执行图1中步骤4、步骤5、步骤6,直至步骤4中判断无差异子文件,即差异子文件全部升级完毕,升级完成程序退出,如图1中步骤7,步骤5中如果嵌入式系统远程获取本地PC服务器差异子文件不成功,则返回步骤2。
升级程序启动后,升级程序重新获取PC机版本控制文件,并和嵌入式系统内部版本控制文件进行对比,已成功升级文件将不重复升级,实现了断点续传。
本发明提供了一种嵌入式系统的数据远程升级的思路及方法,具体实现该技术方案的方法和途径很多,以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加以实现。

Claims (6)

1.一种嵌入式系统的数据远程升级方法,其特征在于,在本地服务器和一个远程嵌入式系统之间采用差异升级方式进行数据升级;
所述差异升级方式指将嵌入式系统内现有数据和本地服务器的新数据按照一定大小分成多个子文件,并进行差异对比形成差异子文件和版本控制文件,根据版本控制文件对差异的子文件进行升级,相同的子文件不升级。
2.根据权利要求1所述的嵌入式系统的数据远程升级方法,其特征在于,所述版本控制文件按照二进制编码方式映射各个差异子文件,映射方法如下:
所述版本控制文件的每一个二进制bit位对应着本地服务器新数据中的一个子文件;
用二进制bit位0表示本地服务器新数据中的子文件和嵌入式系统内现有数据中的子文件相同,不需要升级;用二进制bit位1表示本地服务器的新数据中的子文件和嵌入式系统内现有数据中的子文件不同,需要升级;
或者,
用二进制bit位1表示本地服务器新数据中的子文件和嵌入式系统内现有数据中的子文件相同,不需要升级;用二进制bit位0表示本地服务器的新数据中的子文件和嵌入式系统内现有数据中的子文件不同,需要升级。
3.根据权利要求2所述的嵌入式系统的数据远程升级方法,其特征在于,数据远程升级开始时,嵌入式系统获取新的版本控制文件并和自身的版本控制文件进行bit位扫描对比,扫描顺序为从前往后正序扫描或者从后往前倒序扫描,根据该bit位的值判断是该bit位映射的子文件是否是差异子文件,如果是则进行升级,否则不升级。
4.根据权利要求3所述的嵌入式系统的数据远程升级方法,其特征在于,根据对版本控制文件二进制扫描的结果,嵌入式系统获取本地服务器上的差异子文件,获取成功后嵌入式系统修改自身的版本控制文件,表示该差异子文件已经和本地服务器上的差异子文件相同。
5.根据权利要求1至4中任意一项所述的嵌入式系统的数据远程升级方法,其特征在于,在本地服务器和一个远程嵌入式系统之间采用断点续传方式进行数据升级;
所述断点续传方式指如果本次升级失败只升级了部分差异子文件,下一次升级时,已成功升级差异子文件将不再升级,仅仅升级未完成差异子文件。
6.根据权利要求1至5中任意一项所述的嵌入式系统的数据远程升级方法,其特征在于,如果一次升级失败,只升级了部分差异子文件,已升级的部分差异子文件对应在版本控制文件中对应的bit位已经被修改,下次升级进行bit位扫描时将跳过该bit位,不对该bit位对应的差异子文件升级。
CN201110277708A 2011-09-19 2011-09-19 嵌入式系统的数据远程升级方法 Pending CN102325189A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110277708A CN102325189A (zh) 2011-09-19 2011-09-19 嵌入式系统的数据远程升级方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110277708A CN102325189A (zh) 2011-09-19 2011-09-19 嵌入式系统的数据远程升级方法

Publications (1)

Publication Number Publication Date
CN102325189A true CN102325189A (zh) 2012-01-18

Family

ID=45452857

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110277708A Pending CN102325189A (zh) 2011-09-19 2011-09-19 嵌入式系统的数据远程升级方法

Country Status (1)

Country Link
CN (1) CN102325189A (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103347095A (zh) * 2013-07-22 2013-10-09 广州市交通信息中心 一种车联网系统中的无线固件更新方法
CN106250195A (zh) * 2016-08-10 2016-12-21 青岛海信电器股份有限公司 更新系统文件的方法、设备及系统
CN112612504A (zh) * 2020-11-30 2021-04-06 特力惠信息科技股份有限公司 一种java安装包管理方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101593118A (zh) * 2009-02-24 2009-12-02 浪潮集团山东通用软件有限公司 一种灵活的软件升级的方法
CN101739278A (zh) * 2009-12-17 2010-06-16 中国电力科学研究院 一种企业级应用软件升级方法及系统
CN102147742A (zh) * 2011-03-18 2011-08-10 深圳市广和通实业发展有限公司 一种嵌入式软件的在线升级方法及系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101593118A (zh) * 2009-02-24 2009-12-02 浪潮集团山东通用软件有限公司 一种灵活的软件升级的方法
CN101739278A (zh) * 2009-12-17 2010-06-16 中国电力科学研究院 一种企业级应用软件升级方法及系统
CN102147742A (zh) * 2011-03-18 2011-08-10 深圳市广和通实业发展有限公司 一种嵌入式软件的在线升级方法及系统

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103347095A (zh) * 2013-07-22 2013-10-09 广州市交通信息中心 一种车联网系统中的无线固件更新方法
CN106250195A (zh) * 2016-08-10 2016-12-21 青岛海信电器股份有限公司 更新系统文件的方法、设备及系统
CN112612504A (zh) * 2020-11-30 2021-04-06 特力惠信息科技股份有限公司 一种java安装包管理方法

Similar Documents

Publication Publication Date Title
CN104915237A (zh) 蓝牙设备固件程序的升级、升级控制方法及设备
CN102065413B (zh) 数据库升级方法及系统、基站自启动方法及系统
CN105786549B (zh) 智能设备及其升级方法
CN103257973A (zh) 浏览器缓存更新方法和系统
CN101110706A (zh) 一种配置数据同步方法
CN105139623B (zh) 基于宽带载波的采集器多级传输的文件压缩远程升级方法
CN107682399B (zh) 一种基于大数据的文件夹断点续传方法
US10469620B2 (en) Method for transferring a new software version to at least one electricity meter via a communication network
CN104732285A (zh) 获取性能优化策略及终端性能优化的方法、服务器及终端
CN103297275A (zh) Web网管客户端模块动态发现与加载的系统及方法
CN101789980A (zh) 一种基于集群网络批量升级的方法
CN101984406A (zh) 一种通过无线局域网对终端进行升级的方法和系统
CN1777123A (zh) 一种基于SNMP的IPv6传感器网络节点管理方法
CN102325189A (zh) 嵌入式系统的数据远程升级方法
CN102981857A (zh) 数据库集群的并行压缩海量数据装载方法
CN105357048A (zh) 网络设备数据同步方法和系统
CN104683472A (zh) 一种支持大数据量的数据传输方法
CN103379446A (zh) 一种基于wifi的多终端控制方法及设备
CN102546218A (zh) 配置管理方法及系统
CN106557335A (zh) 应用程序的更新方法、装置及系统
CN102148702B (zh) 一种使用网络配置协议进行网络管理的方法
CN109639507A (zh) 一种宽带电力线载波通信网络升级方法
CN105516745A (zh) 终端的升级方法及装置
CN103068052A (zh) 资源动态配置方法、系统和Portal服务器
CN104701982A (zh) 一种用于对配电线路监测终端进行自动升级的方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20120118