CN103116502A - 一种利用主备版本备份实现升级的方法 - Google Patents
一种利用主备版本备份实现升级的方法 Download PDFInfo
- Publication number
- CN103116502A CN103116502A CN 201110365100 CN201110365100A CN103116502A CN 103116502 A CN103116502 A CN 103116502A CN 201110365100 CN201110365100 CN 201110365100 CN 201110365100 A CN201110365100 A CN 201110365100A CN 103116502 A CN103116502 A CN 103116502A
- Authority
- CN
- China
- Prior art keywords
- version
- existing
- backup
- standby
- primary version
- 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
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种利用主备版本备份实现升级的方法。本发明通过在嵌入式设备中同时存储启动BOOT、现有主用版本、现有备用版本三个文件以及参数配置,实现主备互换、远程升级功能,提高产品的稳定性和可维护性,有效降低产品开发和维护成本。
Description
(一)技术领域:
本发明涉及嵌入式产品设计领域,特别是一种利用主备版本备份实现升级的方法。
(二)背景技术:
在嵌入式产品中,经常会因为功能变化、故障修复等原因,需要从远程对产品中的软件(版本)进行升级。传统嵌入式产品实现方式,是在产品中仅放置一个版本文件,该版本运行期间执行升级功能时,需要从远程下载文件,并覆盖该版本自己所在的存储位置。完成版本升级后,重新启动即可运行新版本。该方式的缺陷在于升级过程不能被中断,一旦升级过程被掉电等情况异常中止,将导致设备上存储的版本文件损坏,无法再次启动,最终只能返厂维修。
(三)发明内容:
本发明的目的在于提供一种利用主备版本备份实现升级的方法以克服现有技术的不足,从而在终端设备上降低产品成本。
本发明的技术方案:一种利用主备版本备份实现升级的方法,其特征在于具体步骤如下:
(1)在嵌入式设备上,将存储空间逻辑划分为三部分,分别标识为V0、V1和V2。
(2)将启动BOOT、现有主用版本和现有备用版本存储在嵌入式设备中,启动BOOT的存储位置为V0,现有主用版本的存储位置为V1或V2,现有备用版本的存储位置为V1或V2,现有主用版本和现有备用版本的存储位置关系由参数配置决定。
(3)嵌入式设备运行时,由启动BOOT进行引导,根据参数配置,判断现有主用版本位于V1还是V2,运行现有主用版本,启动BOOT切换控制权至现有主用版本。
(4)当嵌入式设备需要升级时,现有主用版本从远程服务端下载新版本,将新版本拷贝到现有备用版本位置,然后更改参数配置,将新版本设为新主用版本,将当前主用版本设为新备用版本,然后重启嵌入式设备,完成软件升级。
上述所说的启动BOOT是一个小型可执行文件,存储在嵌入式设备的物理地址0x0,在嵌入式设备开始工作后将自动执行。
上述所说的现有主用版本是与现有备用版本不同的可执行文件,能够首先获得启动BOOT的引导而运行。
上述步骤(2)中所说的现有主用版本是设置了位置无关选项的可执行文件,步骤(3)中所说的运行现有主用版本的方式为将现有主用版本拷贝到启动位置再运行,或者不执行拷贝,直接从存储位置运行现有主用版本。
上述步骤(2)中所说的现有主用版本为未设置位置无关选项的可执行文件,步骤(3)中所说的运行现有主用版本的方式为将现有主用版本拷贝到某个固定的启动位置再运行。
上述所说的启动位置为内存或存储空间的某个位置。
上述所说的参数配置存储在独立的存储空间或存储在嵌入式设备另外划分的区域中,将嵌入式设备另外划分的区域标识为Vm。
上述所说的存储参数配置的独立的存储空间为E2PROM。
上述所说的启动BOOT切换控制权中的切换方式为调整CPU程序计数器。
上述所说的步骤(2)中运行现有主用版本以后,启动BOOT切换控制权以前,如果启动BOOT运行在用户模式下,需要通过软中断方式,强迫CPU进入管理模式,然后才能调整CPU程序计数器。
本发明的优越性:本发明通过在嵌入式设备中同时存储启动BOOT、现有主用版本、现有备用版本三个文件以及参数配置,实现主备互换、远程升级功能,提高产品的稳定性和可维护性,有效降低产品开发和维护成本。
(四)附图说明:
图1为本发明所涉一种利用主备版本备份实现升级的方法中参数配置存储在独立的存储空间时嵌入式设备的存储空间划分示意图。
图2为本发明所涉一种利用主备版本备份实现升级的方法中参数配置存储在嵌入式设备中时嵌入式设备存储空间划分示意图。
(五)具体实施方式:
实施例:一种利用主备版本备份实现升级的方法,其特征在于具体步骤如下:
(1)在嵌入式设备上,将存储空间逻辑划分为三部分,分别标识为V0、V1和V2。
(2)将启动BOOT、现有主用版本和现有备用版本存储在嵌入式设备中,启动BOOT的存储位置为V0,现有主用版本的存储位置为V1或V2,现有备用版本的存储位置为V1或V2,现有主用版本和现有备用版本的存储位置关系由参数配置决定。
(3)嵌入式设备运行时,由启动BOOT进行引导,根据参数配置,判断现有主用版本位于V1还是V2,运行现有主用版本,启动BOOT切换控制权至现有主用版本。
(4)当嵌入式设备需要升级时,现有主用版本从远程服务端下载新版本,将新版本拷贝到现有备用版本位置,然后更改参数配置,将新版本设为新主用版本,将当前主用版本设为新备用版本,然后重启嵌入式设备,完成软件升级。
上述所说的启动BOOT是一个小型可执行文件,存储在嵌入式设备的物理地址0x0,在嵌入式设备开始工作后将自动执行。
上述所说的现有主用版本是与现有备用版本不同的可执行文件,能够首先获得启动BOOT的引导而运行。
上述步骤(2)中所说的现有主用版本是设置了位置无关选项的可执行文件,步骤(3)中所说的运行现有主用版本的方式为将现有主用版本拷贝到启动位置再运行,或者不执行拷贝,直接从存储位置运行现有主用版本。
上述所说的启动位置为内存或存储空间的某个位置。
上述所说的参数配置存储在独立的存储空间。
上述所说的存储参数配置的独立的存储空间为E2PROM。
上述所说的启动BOOT切换控制权中的切换方式为调整CPU程序计数器。
Claims (10)
1.一种利用主备版本备份实现升级的方法,其特征在于具体步骤如下:
(1)在嵌入式设备上,将存储空间逻辑划分为三部分,分别标识为V0、V1和V2。
(2)将启动BOOT、现有主用版本和现有备用版本存储在嵌入式设备中,启动BOOT的存储位置为V0,现有主用版本的存储位置为V1或V2,现有备用版本的存储位置为V1或V2,现有主用版本和现有备用版本的存储位置关系由参数配置决定。
(3)嵌入式设备运行时,由启动BOOT进行引导,根据参数配置,判断现有主用版本位于V1还是V2,运行现有主用版本,启动BOOT切换控制权至现有主用版本。
(4)当嵌入式设备需要升级时,现有主用版本从远程服务端下载新版本,将新版本拷贝到现有备用版本位置,然后更改参数配置,将新版本设为新主用版本,将当前主用版本设为新备用版本,然后重启嵌入式设备,完成软件升级。
2.根据权利要求1所说的一种利用主备版本备份实现升级的方法,其特征在于所说的启动BOOT是一个小型可执行文件,存储在嵌入式设备的物理地址0x0,在嵌入式设备开始工作后将自动执行。
3.根据权利要求1所说的一种利用主备版本备份实现升级的方法,其特征在于所说的现有主用版本是与现有备用版本不同的可执行文件,能够首先获得启动BOOT的引导而运行。
4.根据权利要求1所说的一种利用主备版本备份实现升级的方法,其特征在于步骤(2)中所说的现有主用版本是设置了位置无关选项的可执行文件,步骤(3)中所说的运行现有主用版本的方式为将现有主用版本拷贝到启动位置再运行,或者不执行拷贝,直接从存储位置运行现有主用版本。
5.根据权利要求1所说的一种利用主备版本备份实现升级的方法,其特征在于步骤(2)中所说的现有主用版本为未设置位置无关选项的可执行文件,步骤(3)中所说的运行现有主用版本的方式为将现有主用版本拷贝到某个固定的启动位置再运行。
6.根据权利要求4或5所说的一种利用主备版本备份实现升级的方法,其特征在于所说的启动位置为内存或存储空间的某个位置。
7.根据权利要求1所说的一种利用主备版本备份实现升级的方法,其特征在于所说的参数配置存储在独立的存储空间或存储在嵌入式设备另外划分的区域中,将嵌入式设备另外划分的区域标识为Vm。
8.根据权利要求7所说的一种利用主备版本备份实现升级的方法,其特征在于所说的存储参数配置的独立的存储空间为E2PROM。
9.根据权利要求1所说的一种利用主备版本备份实现升级的方法,其特征在于所说的启动BOOT切换控制权中的切换方式为调整CPU程序计数器。
10.根据权利要求1所说的一种利用主备版本备份实现升级的方法,其特征在于所说的步骤(2)中运行现有主用版本以后,启动BOOT切换控制权以前,如果启动BOOT运行在用户模式下,需要通过软中断方式,强迫CPU进入管理模式,然后才能调整CPU程序计数器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110365100 CN103116502A (zh) | 2011-11-17 | 2011-11-17 | 一种利用主备版本备份实现升级的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201110365100 CN103116502A (zh) | 2011-11-17 | 2011-11-17 | 一种利用主备版本备份实现升级的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103116502A true CN103116502A (zh) | 2013-05-22 |
Family
ID=48414888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201110365100 Pending CN103116502A (zh) | 2011-11-17 | 2011-11-17 | 一种利用主备版本备份实现升级的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103116502A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103473084A (zh) * | 2013-05-27 | 2013-12-25 | 广州电网公司惠州供电局 | 一种温度监测装置的软件在线升级方法 |
WO2016090822A1 (zh) * | 2014-12-09 | 2016-06-16 | 小米科技有限责任公司 | 对固件进行升级的方法及装置 |
US9886264B2 (en) | 2014-12-09 | 2018-02-06 | Xiaomi Inc. | Method and device for upgrading firmware |
CN111026417A (zh) * | 2019-10-24 | 2020-04-17 | 深兰科技(上海)有限公司 | 一种嵌入式设备的升级方法及嵌入式设备 |
CN111522568A (zh) * | 2020-05-07 | 2020-08-11 | 深圳市吉祥腾达科技有限公司 | 一种boot下验证升级文件的方法 |
CN113360176A (zh) * | 2020-03-06 | 2021-09-07 | 浙江宇视科技有限公司 | 一种软件程序的升级方法、装置、存储介质及电子设备 |
-
2011
- 2011-11-17 CN CN 201110365100 patent/CN103116502A/zh active Pending
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103473084A (zh) * | 2013-05-27 | 2013-12-25 | 广州电网公司惠州供电局 | 一种温度监测装置的软件在线升级方法 |
CN103473084B (zh) * | 2013-05-27 | 2018-01-19 | 广东电网有限责任公司惠州供电局 | 一种温度监测装置的软件在线升级方法 |
WO2016090822A1 (zh) * | 2014-12-09 | 2016-06-16 | 小米科技有限责任公司 | 对固件进行升级的方法及装置 |
RU2633151C2 (ru) * | 2014-12-09 | 2017-10-11 | Сяоми Инк. | Способ и устройство для обновления микропрограммного обеспечения |
US9886264B2 (en) | 2014-12-09 | 2018-02-06 | Xiaomi Inc. | Method and device for upgrading firmware |
CN111026417A (zh) * | 2019-10-24 | 2020-04-17 | 深兰科技(上海)有限公司 | 一种嵌入式设备的升级方法及嵌入式设备 |
CN113360176A (zh) * | 2020-03-06 | 2021-09-07 | 浙江宇视科技有限公司 | 一种软件程序的升级方法、装置、存储介质及电子设备 |
CN113360176B (zh) * | 2020-03-06 | 2023-08-25 | 浙江宇视科技有限公司 | 一种软件程序的升级方法、装置、存储介质及电子设备 |
CN111522568A (zh) * | 2020-05-07 | 2020-08-11 | 深圳市吉祥腾达科技有限公司 | 一种boot下验证升级文件的方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103116502A (zh) | 一种利用主备版本备份实现升级的方法 | |
CN104572206A (zh) | 应用程序自更新和备份恢复的方法 | |
CN103019775B (zh) | 一种终端设备刷机的方法、装置和设备 | |
CN103176824B (zh) | 一种系统升级的方法及装置 | |
US8972966B2 (en) | Updating firmware in a hybrid computing environment | |
CN102033790B (zh) | 一种嵌入式系统bootrom的升级方法和装置 | |
CN102722394B (zh) | 一种嵌入式设备的启动升级方法 | |
KR101673299B1 (ko) | 운영 시스템 복구 방법 및 장치, 그리고 단말기기 | |
CN102087603A (zh) | 一种在单芯片上实现主备版本备份的方法 | |
CN102508686A (zh) | 一种系统安全升级的实现方法及其系统 | |
CN105138382A (zh) | 一种Android系统升级的方法及终端 | |
CN103761088A (zh) | 一种适用于arm架构移动设备的多操作系统切换方法 | |
CN101719072A (zh) | 嵌入式终端设备软件升级方法及升级装置 | |
CN102902556A (zh) | 一种嵌入式设备的多级引导加载方法 | |
KR20160146937A (ko) | 지속성 있는 메모리 저장을 갖는 펌웨어 인터페이스 | |
CN111614710A (zh) | 软件更新装置、车辆和软件更新方法 | |
CN101004690A (zh) | 嵌入式系统加载程序与应用程序一体化更新方法 | |
CN102681857A (zh) | 一种实现车载软件系统修复或升级的方法、装置 | |
CN102831022A (zh) | 修改系统配置的方法和装置 | |
CN105094909A (zh) | 移动终端软件升级方法、升级装置及移动终端 | |
CN105814545B (zh) | 电子设备 | |
CN106095625A (zh) | 无线接入设备启动方法及系统 | |
CN107179934B (zh) | 云计算环境中虚拟机自动还原的方法和系统 | |
CN104750516A (zh) | 终端设备操作系统升级方法 | |
CN101739530B (zh) | Arm系统启动过程中的加密方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20130522 |