CN108549539A - 一种进行设备远程升级的方法及装置 - Google Patents
一种进行设备远程升级的方法及装置 Download PDFInfo
- Publication number
- CN108549539A CN108549539A CN201810062330.1A CN201810062330A CN108549539A CN 108549539 A CN108549539 A CN 108549539A CN 201810062330 A CN201810062330 A CN 201810062330A CN 108549539 A CN108549539 A CN 108549539A
- Authority
- CN
- China
- Prior art keywords
- upgrade
- memory area
- spare memory
- upgrade procedure
- program
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/34—Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters
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)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Stored Programmes (AREA)
Abstract
本发明公开了一种设备远程升级方法及装置,此方法包括:加载主用存储区内的程序并运行;确定需要对设备程序进行升级时,获取升级程序;将升级程序写入备用存储区,写入完成后,对备用存储区中的升级程序进行校验,校验成功后运行备用存储区的升级程序。本发明可以防止设备的程序进行升级过程由于将原程序擦除和重写时出现错误导致的升级失败,可以有效保证程序升级的顺利进行,提高设备程序管理的有效性。
Description
技术领域
本发明涉及智能家电技术领域,尤其涉及一种进行设备远程升级的方法及装置。
背景技术
随着人们对美好生活的追求,家用电器越来越智能化,家电产品中往往包括控制板、网络模块,因此家电可以实现远程升级。现有家电远程升级功能,多是通过服务器、路由器、无线模块把要升级的程序代码发送给控制板的BootLoader(引导加载模块),BootLoader再把升级程序代码写入控制板的程序区,在程序的擦除与重写过程中,有可能会出现个别存储单元坏掉、突然断电、断网等情况,一旦出现这个情况,此台家电的程序升级就可能无法完成。由于这种程序升级方式,要先擦除控制板上原有的程序代码,才能写入要升级的程序代码,如果升级程序代码无法写入成功,原有程序代码已经擦除,这样控制板无法正常运行,整台家电也就不能工作了。
因此,现有的家电远程升级方案存在风险高,不可靠的缺陷。
发明内容
为了解决上述技术问题,本发明提供了一种进行设备远程升级的方法及装置。
本发明提供的进行设备远程升级的方法,包括:
加载主用存储区内的程序并运行;
确定需要对设备程序进行升级时,获取升级程序;
将升级程序写入备用存储区,写入完成后,对备用存储区中的升级程序进行校验,校验成功后运行备用存储区的升级程序。
上述进行设备远程升级的方法还具有以下特点:
此方法还包括:校验失败后,执行重校验步骤:获取升级程序,将升级程序写入备用存储区,对备用存储区中的升级程序进行校验,如果校验成功,运行备用存储区的升级程序,如果校验失败,在执行重校验步骤的次数小于预设次数时,再次执行重校验步骤,在执行重校验步骤的次数等于或大于预设次数时,加载并执行主用存储区的程序。
上述进行设备远程升级的方法还具有以下特点:
此方法还包括:记录各存储区的唯一标识和功能标识;功能标识包括作为主存储区的主标识和作为备用存储区的备标识;
校验成功后运行备用存储区的升级程序包括:校验成功后,记录接收到升级程序的备用存储区的唯一标识,设置此备用存储区的功能标识为主标识,设置原功能标识为主标识的主用存储区的功能标识为备标识,重启设备,加载并运行功能标识为主标识的存储区上的程序。
上述进行设备远程升级的方法还具有以下特点:
确定需要对设备程序进行升级包括:
检测到无线传输模块的存储区存储有升级程序;
或者,接收到无线传输模块发送的接收升级程序的通知。
上述进行设备远程升级的方法还具有以下特点:
此方法还包括:设置两个以上备用存储区,记录各备用存储区中升级程序的校验成功率,将升级程序写入备用存储区时将升级程序写入校验成功率最高的备用存储区。
本发明提供的进行设备远程升级的装置,包括引导加载模块、主用存储区和备用存储区;
引导加载模块,用于加载主用存储区内的程序并运行;确定需要对设备程序进行升级时,获取升级程序;还用于将升级程序写入备用存储区,写入完成后,对备用存储区中的升级程序进行校验,校验成功后运行备用存储区的升级程序。
上述进行设备远程升级的装置还具有以下特点:
引导加载模块还用于在校验失败后,执行重校验步骤:获取升级程序,将升级程序写入备用存储区,对备用存储区中的升级程序进行校验,如果校验成功,运行备用存储区的升级程序,如果校验失败,在执行重校验步骤的次数小于预设次数时,再次执行重校验步骤,在执行重校验步骤的次数等于或大于预设次数时,加载并执行主用存储区的程序。
上述进行设备远程升级的装置还具有以下特点:
引导加载模块包括记录单元,用于记录各存储区的唯一标识和功能标识;功能标识包括作为主存储区的主标识和作为备用存储区的备标识;
引导加载模块包括存储区切换单元,用于在校验成功后,记录接收到升级程序的备用存储区的唯一标识,设置此备用存储区的功能标识为主标识,设置原功能标识为主标识的主用存储区的功能标识为备标识,重启设备,加载并运行功能标识为主标识的存储区上的程序。
上述进行设备远程升级的装置还具有以下特点:
装置还包括无线传输模块;
引导加载模块还用于使用以下方法确定需要对设备程序进行升级:检测到无线传输模块的存储区存储有升级程序;或者,接收到无线传输模块发送的接收升级程序的通知。
上述进行设备远程升级的装置还具有以下特点:
备用存储区的数量大于2;
引导加载模块还用于记录各备用存储区中升级程序的校验成功率,将升级程序写入备用存储区时将升级程序写入校验成功率最高的备用存储区。
本发明可以防止设备的程序进行升级过程由于将原程序擦除和重写时出现错误导致的升级失败,可以有效保证程序升级的顺利进行,提高设备程序管理的有效性。
附图说明
构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是实施例中进行设备远程升级的方法的流程图;
图2是实施例中进行设备远程升级的装置的结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
图1是实施例中进行设备远程升级的方法的流程图,该方法包括:
步骤101,加载主用存储区内的程序并运行;
步骤102,确定需要对设备程序进行升级时,获取升级程序;
步骤103,将升级程序写入备用存储区,写入完成后,对备用存储区中的升级程序进行校验,校验成功后运行备用存储区的升级程序。
此方法中,设备出厂时在引导加载模块和主用存储区写入程序。
步骤101中,当检测到有升级程序时,由设备的引导加载模块确定是否需要对设备程序进行升级,当确定需要对设备程序进行升级时,获取升级程序代码。确定需要对设备的程序进行升级的条件包括:检测到无线传输模块的存储区存储有升级程序;或者,接收到无线传输模块发送的接收升级程序的通知。满足此条件后从无线传输模块下载升级程序。
在一些实施例中,设备的升级程序直接下载到设备中无线传输模块的存储区存储,引导加载模块可定期检测无线传输模块的存储区;而在另一些实施例中,在云服务平台向设备下发升级程序之前,先向设备下发接收升级程序的通知,该通知由无线传输模块接收后发送到设备的引导加载模块;因此,引导加载模块可以通过检测到无线传输模块的存储区存储有升级程序,或者接收到无线传输模块发送的接收升级程序的通知,来确定需要对设备的程序进行升级;无线传输模块包括:WIFI模块。
本发明实施例中除了包含引导加载模块和存储原有控制程序的主用存储区之外,还预先设置了备用存储区。
引导加载模块将升级程序写入该备用存储区后,在该备用存储区中对该升级程序代码进行校验(例如可以采用CRC法进行校验)当升级程序代码通过校验后,运行升级程序代码。本方法中可以只进行一次校验,也可以进行多次校验,以确认升级程序代码是否被完整的下载。进行多次校验时,校验失败后,执行重校验步骤:获取升级程序,将升级程序写入备用存储区,对备用存储区中的升级程序进行校验,如果校验成功,运行备用存储区的升级程序,如果校验失败,在执行重校验步骤的次数小于预设次数时,再次执行重校验步骤,在执行重校验步骤的次数等于或大于预设次数时,加载并执行主用存储区的程序。即对备用存储区的升级程序进行校验,如果校验失败,则控制板再次下载升级程序并对进行校验;当校验失败达到一定次数时(比如3次),则放弃本轮升级尝试,继续执行主用存储区中原有的控制程序。
在一些实施例中,由于存储区往往空间有限,为了更好的利用控制板的存储区。此方法还包括:记录各存储区的唯一标识和功能标识;功能标识是指作为主存储区的主标识和作为备用存储区的备标识。此方法中,校验成功后运行备用存储区的升级程序包括:校验成功后,记录接收到升级程序的备用存储区的唯一标识,设置此备用存储区的功能标识为主标识,设置原功能标识为主标识的主用存储区的功能标识为备标识,重启设备,加载并运行功能标识为主标识的存储区上的程序。
此方法中还可以设置两个以上备用存储区,记录各备用存储区中升级程序的校验成功率,将升级程序写入备用存储区时将升级程序写入校验成功率最高的备用存储区。
如图2所示,进行设备远程升级的装置包括引导加载模块、主用存储区和备用存储区。
引导加载模块,用于加载主用存储区内的程序并运行;确定需要对设备程序进行升级时,获取升级程序;还用于将升级程序写入备用存储区,写入完成后,对备用存储区中的升级程序进行校验,校验成功后运行备用存储区的升级程序。
引导加载模块还用于在校验失败后,执行重校验步骤:获取升级程序,将升级程序写入备用存储区,对备用存储区中的升级程序进行校验,如果校验成功,运行备用存储区的升级程序,如果校验失败,在执行重校验步骤的次数小于预设次数时,再次执行重校验步骤,在执行重校验步骤的次数等于或大于预设次数时,加载并执行主用存储区的程序。
引导加载模块包括记录单元和存储区切换模块。记录单元用于记录各存储区的唯一标识和功能标识;功能标识是指作为主存储区的主标识和作为备用存储区的备标识。存储区切换模块用于在校验成功后,记录接收到升级程序的备用存储区的唯一标识,设置此备用存储区的功能标识为主标识,设置原功能标识为主标识的主用存储区的功能标识为备标识,重启设备,加载并运行功能标识为主标识的存储区上的程序。
此装置还包括无线传输模块。引导加载模块还用于使用以下方法确定需要对设备程序进行升级:检测到无线传输模块的存储区存储有升级程序;或者,接收到无线传输模块发送的接收升级程序的通知。
备用存储区的数量大于2。引导加载模块还用于记录各备用存储区中升级程序的校验成功率,将升级程序写入备用存储区时将升级程序写入校验成功率最高的备用存储区。
本发明可以防止设备的程序进行升级过程由于将原程序擦除和重写时出现错误导致的升级失败,可以有效保证程序升级的顺利进行,提高设备程序管理的有效性。
上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,此程序可以存储于计算机可读存储介质中,如只读存储区、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现,相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本发明不限制于任何特定形式的硬件和软件的结合。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括要素的物品或者设备中还存在另外的相同要素。
以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。
Claims (10)
1.一种进行设备远程升级的方法,其特征在于,包括:
加载主用存储区内的程序并运行;
确定需要对设备程序进行升级时,获取升级程序;
将所述升级程序写入备用存储区,写入完成后,对所述备用存储区中的升级程序进行校验,校验成功后运行所述备用存储区的升级程序。
2.如权利要求1所述的进行设备远程升级的方法,其特征在于,
所述方法还包括:校验失败后,执行重校验步骤:获取升级程序,将所述升级程序写入备用存储区,对所述备用存储区中的升级程序进行校验,如果校验成功,运行所述备用存储区的升级程序,如果校验失败,在执行重校验步骤的次数小于预设次数时,再次执行重校验步骤,在执行重校验步骤的次数等于或大于预设次数时,加载并执行主用存储区的程序。
3.如权利要求1或2所述的进行设备远程升级的方法,其特征在于,
所述方法还包括:记录各存储区的唯一标识和功能标识;所述功能标识包括作为主存储区的主标识和作为备用存储区的备标识;
所述校验成功后运行所述备用存储区的升级程序包括:校验成功后,记录接收到所述升级程序的备用存储区的唯一标识,设置此备用存储区的功能标识为主标识,设置原功能标识为主标识的主用存储区的功能标识为备标识,重启设备,加载并运行功能标识为主标识的存储区上的程序。
4.如权利要求1所述的进行设备远程升级的方法,其特征在于,
所述确定需要对设备程序进行升级包括:
检测到无线传输模块的存储区存储有升级程序;
或者,接收到无线传输模块发送的接收升级程序的通知。
5.如权利要求1所述的进行设备远程升级的方法,其特征在于,
所述方法还包括:设置两个以上备用存储区,记录各备用存储区中升级程序的校验成功率,将所述升级程序写入备用存储区时将升级程序写入校验成功率最高的备用存储区。
6.一种进行设备远程升级的装置,其特征在于,包括引导加载模块、主用存储区和备用存储区;
引导加载模块,用于加载主用存储区内的程序并运行;确定需要对设备程序进行升级时,获取升级程序;还用于将所述升级程序写入备用存储区,写入完成后,对所述备用存储区中的升级程序进行校验,校验成功后运行所述备用存储区的升级程序。
7.如权利要求6所述的进行设备远程升级的装置,其特征在于,
所述引导加载模块还用于在校验失败后,执行重校验步骤:获取升级程序,将所述升级程序写入备用存储区,对所述备用存储区中的升级程序进行校验,如果校验成功,运行所述备用存储区的升级程序,如果校验失败,在执行重校验步骤的次数小于预设次数时,再次执行重校验步骤,在执行重校验步骤的次数等于或大于预设次数时,加载并执行主用存储区的程序。
8.如权利要求6或7所述的进行设备远程升级的装置,其特征在于,
所述引导加载模块包括记录单元,用于记录各存储区的唯一标识和功能标识;所述功能标识包括作为主存储区的主标识和作为备用存储区的备标识;
所述引导加载模块包括存储区切换单元,用于在校验成功后,记录接收到所述升级程序的备用存储区的唯一标识,设置此备用存储区的功能标识为主标识,设置原功能标识为主标识的主用存储区的功能标识为备标识,重启设备,加载并运行功能标识为主标识的存储区上的程序。
9.如权利要求6所述的进行设备远程升级的装置,其特征在于,
所述装置还包括无线传输模块;
所述引导加载模块还用于使用以下方法确定需要对设备程序进行升级:检测到无线传输模块的存储区存储有升级程序;或者,接收到无线传输模块发送的接收升级程序的通知。
10.如权利要求6所述的进行设备远程升级的装置,其特征在于,
所述备用存储区的数量大于2;
所述引导加载模块还用于记录各备用存储区中升级程序的校验成功率,将所述升级程序写入备用存储区时将升级程序写入校验成功率最高的备用存储区。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810062330.1A CN108549539A (zh) | 2018-01-23 | 2018-01-23 | 一种进行设备远程升级的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810062330.1A CN108549539A (zh) | 2018-01-23 | 2018-01-23 | 一种进行设备远程升级的方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108549539A true CN108549539A (zh) | 2018-09-18 |
Family
ID=63515725
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810062330.1A Pending CN108549539A (zh) | 2018-01-23 | 2018-01-23 | 一种进行设备远程升级的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108549539A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021036917A1 (zh) * | 2019-08-28 | 2021-03-04 | 阿里巴巴集团控股有限公司 | 物联网设备中的系统升级方法、装置、设备及存储介质 |
CN112988204A (zh) * | 2021-05-19 | 2021-06-18 | 西安羚控电子科技有限公司 | 一种无人机软件远程升级及回滚的方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314369A (zh) * | 2011-10-09 | 2012-01-11 | 杭州先锋电子技术股份有限公司 | 一种远程在线监控系统中设备自升级方法 |
KR20150033240A (ko) * | 2013-09-24 | 2015-04-01 | 엘에스산전 주식회사 | 전기 자동차 충전기의 펌웨어 다운로드 시스템 |
CN106155587A (zh) * | 2016-06-29 | 2016-11-23 | 联想(北京)有限公司 | 信息处理方法及存储设备 |
-
2018
- 2018-01-23 CN CN201810062330.1A patent/CN108549539A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102314369A (zh) * | 2011-10-09 | 2012-01-11 | 杭州先锋电子技术股份有限公司 | 一种远程在线监控系统中设备自升级方法 |
KR20150033240A (ko) * | 2013-09-24 | 2015-04-01 | 엘에스산전 주식회사 | 전기 자동차 충전기의 펌웨어 다운로드 시스템 |
CN106155587A (zh) * | 2016-06-29 | 2016-11-23 | 联想(北京)有限公司 | 信息处理方法及存储设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021036917A1 (zh) * | 2019-08-28 | 2021-03-04 | 阿里巴巴集团控股有限公司 | 物联网设备中的系统升级方法、装置、设备及存储介质 |
CN112988204A (zh) * | 2021-05-19 | 2021-06-18 | 西安羚控电子科技有限公司 | 一种无人机软件远程升级及回滚的方法 |
CN112988204B (zh) * | 2021-05-19 | 2021-08-31 | 西安羚控电子科技有限公司 | 一种无人机软件远程升级及回滚的方法 |
US12019517B2 (en) | 2021-05-19 | 2024-06-25 | Xi'an Lyncon Technology Co., Ltd. | Method for remote upgrade and rollback of unmanned aerial vehicle (UAV) software |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7991988B2 (en) | Communication device and firmware update method thereof | |
CN102662701B (zh) | Cpld在线升级方法、装置及业务单板 | |
CN104090796B (zh) | 一种嵌入式设备程序更新方法和系统 | |
CN102622298B (zh) | 一种软件测试系统及方法 | |
CN104915219B (zh) | 单片机程序升级方法及装置 | |
CN105094927B (zh) | 一种设备固件升级方法和装置 | |
CN107402847A (zh) | 一种整车控制器软件的远程升级方法及系统 | |
CN109002310A (zh) | 固件升级方法 | |
CN103154900A (zh) | 编入程序更新方法、编入程序更新程序、电子设备、网络系统 | |
CN107832065A (zh) | 固件升级方法、净水器、升级系统及可读存储介质 | |
CN104978530B (zh) | 一种应用安全管理方法、装置、服务器以及系统 | |
US20090204946A1 (en) | Intelligent software code updater | |
US20200310779A1 (en) | Validating a firmware compliance policy prior to use in a production system | |
CN102857358A (zh) | 可修复固件的客户端设备及其固件修复方法 | |
CN110633091A (zh) | 一种电子模块及其软件无线升级方法 | |
CN109783390A (zh) | Psu固件升降级稳定性测试方法、装置、终端及存储介质 | |
CN104360952A (zh) | 一种软件测试系统及方法 | |
US20150100299A1 (en) | Techniques for programming and verifying backplane controller chip firmware | |
CN109324918A (zh) | 应用程序异常的处理方法及装置、终端及存储介质 | |
CN109597653A (zh) | Bios与bmc命令交互的方法、bios及bmc | |
CN108549539A (zh) | 一种进行设备远程升级的方法及装置 | |
CN109766140A (zh) | 一种机顶盒启动异常的定位方法及装置 | |
CN108920168A (zh) | 支持多个同类ECU同时升级且具防程序不匹配功能的Bootloader方法 | |
CN108170456A (zh) | 电子设备的固件升级方法及装置 | |
CN105786636A (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180918 |