本发明专利技术公开了一种利用主备版本备份实现升级的方法。本发明专利技术通过在嵌入式设备中同时存储启动BOOT、现有主用版本、现有备用版本三个文件以及参数配置,实现主备互换、远程升级功能,提高产品的稳定性和可维护性,有效降低产品开发和维护成本。
【技术实现步骤摘要】
本专利技术涉及嵌入式产品设计领域,特别是。
技术介绍
:在嵌入式产品中,经常会因为功能变化、故障修复等原因,需要从远程对产品中的软件(版本)进行升级。传统嵌入式产品实现方式,是在产品中仅放置一个版本文件,该版本运行期间执行升级功能时,需要从远程下载文件,并覆盖该版本自己所在的存储位置。完成版本升级后,重新启动即可运行新版本。该方式的缺陷在于升级过程不能被中断,一旦升级过程被掉电等情况异常中止,将导致设备上存储的版本文件损坏,无法再次启动,最终只能返厂维修。
技术实现思路
:本专利技术的目的在于提供以克服现有技术的不足,从而在终端设备上降低产品成本。本专利技术的技术方案:,其特征在于具体步骤如下:(I)在嵌入式设备上,将存储空间逻辑划分为三部分,分别标识为VO、Vl和V2。(2)将启动BOOT、现有主用版本和现有备用版本存储在嵌入式设备中,启动BOOT的存储位置为V0,现有主用版本的存储位置为Vl或V2,现有备用版本的存储位置为Vl或V2,现有主用版本和现有备用版本的存储位置关系由参数配置决定。(3)嵌入式设备运行时,由启动BOOT进行引导,根据参数配置,判断现有主用版本位于Vl还是V2,运行现有主用版本,启动BOOT切换控制权至现有主用版本。(4)当嵌入式设备需要升级时,现有主用版本从远程服务端下载新版本,将新版本拷贝到现有备用版本位置,然后更改参数配置,将新版本设为新主用版本,将当前主用版本设为新备用版本,然后重启嵌入式设备,完成软件升级。上述所说的启动BOOT是一个小型可执行文件,存储在嵌入式设备的物理地址0x0,在嵌入式设备开始工作后将自动执行。上述所说的现有主用版本是与现有备用版本不同的可执行文件,能够首先获得启动BOOT的引导而运行。上述步骤(2)中所说的现有主用版本是设置了位置无关选项的可执行文件,步骤(3)中所说的运行现有主用版本的方式为将现有主用版本拷贝到启动位置再运行,或者不执行拷贝,直接从存储位置运行现有主用版本。上述步骤(2)中所说的现有主用版本为未设置位置无关选项的可执行文件,步骤(3)中所说的运行现有主用版本的方式为将现有主用版本拷贝到某个固定的启动位置再运行。上述所说的启动位置为内存或存储空间的某个位置。上述所说的参数配置存储在独立的存储空间或存储在嵌入式设备另外划分的区域中,将嵌入式设备另外划分的区域标识为Vm。上述所说的存储参数配置的独立的存储空间为E2PR0M。上述所说的启动BOOT切换控制权中的切换方式为调整CPU程序计数器。上述所说的步骤(2)中运行现有主用版本以后,启动BOOT切换控制权以前,如果启动BOOT运行在用户模式下,需要通过软中断方式,强迫CPU进入管理模式,然后才能调整(PU程序计数器。本专利技术的优越性:本专利技术通过在嵌入式设备中同时存储启动BOOT、现有主用版本、现有备用版本三个文件以及参数配置,实现主备互换、远程升级功能,提高产品的稳定性和可维护性,有效降低产品开发和维护成本。附图说明:图1为本专利技术所涉中参数配置存储在独立的存储空间时嵌入式设备的存储空间划分示意图。图2为本专利技术所涉中参数配置存储在嵌入式设备中时嵌入式设备存储空间划分示意图。具体实施方式:实施例:,其特征在于具体步骤如下:(I)在嵌入式设备上,将存储空间逻辑划分为三部分,分别标识为V0、Vl和V2。(2)将启动BOOT、现有主用版本和现有备用版本存储在嵌入式设备中,启动BOOT的存储位置为V0,现有主用版本的存储位置为Vl或V2,现有备用版本的存储位置为Vl或V2,现有主用版本和现有备用版本的存储位置关系由参数配置决定。(3)嵌入式设备运行时,由启动BOOT进行引导,根据参数配置,判断现有主用版本位于Vl还是V2,运行现有主用版本,启动BOOT切换控制权至现有主用版本。(4)当嵌入式设备需要升级时,现有主用版本从远程服务端下载新版本,将新版本拷贝到现有备用版本位置,然后更改参数配置,将新版本设为新主用版本,将当前主用版本设为新备用版本,然后重启嵌入式设备,完成软件升级。上述所说的启动BOOT是一个小型可执行文件,存储在嵌入式设备的物理地址0x0,在嵌入式设备开始工作后将自动执行。上述所说的现有主用版本是与现有备用版本不同的可执行文件,能够首先获得启动BOOT的引导而运行。上述步骤(2)中所说的现有主用版本是设置了位置无关选项的可执行文件,步骤(3)中所说的运行现有主用版本的方式为将现有主用版本拷贝到启动位置再运行,或者不执行拷贝,直接从存储位置运行现有主用版本。上述所说的启动位置为内存或存储空间的某个位置。上述所说的参数配置存储在独立的存储空间。上述所说的存储参数配置的独立的存储空间为E2PR0M。 上述所说的启动BOOT切换控制权中的切换方式为调整CPU程序计数器。权利要求1.,其特征在于具体步骤如下: (1)在嵌入式设备上,将存储空间逻辑划分为三部分,分别标识为VO、Vl和V2。(2)将启动BOOT、现有主用版本和现有备用版本存储在嵌入式设备中,启动BOOT的存储位置为VO,现有主用版本的存储位置为Vl或V2,现有备用版本的存储位置为Vl或V2,现有主用版本和现有备用版本的存储位置关系由参数配置决定。(3)嵌入式设备运行时,由启动BOOT进行引导,根据参数配置,判断现有主用版本位于Vl还是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所说的,其特征在于所说的存储参数配置的独立的存储空间为E2PR0M。9.根据权利要求1所说的,其特征在于所说的启动BOOT切换控制权中的切换方式为调整CPU程序计数器。10.根据权利要求1所说的,其特征在于所说的步骤(2)中运行现有主用版本以后,启动BOOT切换控制权以前,如果启动BOOT运行在用户模式下,需要通过软中断方式,强迫CPU进入管理模式,然后才能调整CPU程序计数器。全文摘要本专利技术公开了。本专利技术通过在嵌入式设备中本文档来自技高网...
【技术保护点】
一种利用主备版本备份实现升级的方法,其特征在于具体步骤如下:(1)在嵌入式设备上,将存储空间逻辑划分为三部分,分别标识为V0、V1和V2。(2)将启动BOOT、现有主用版本和现有备用版本存储在嵌入式设备中,启动BOOT的存储位置为V0,现有主用版本的存储位置为V1或V2,现有备用版本的存储位置为V1或V2,现有主用版本和现有备用版本的存储位置关系由参数配置决定。(3)嵌入式设备运行时,由启动BOOT进行引导,根据参数配置,判断现有主用版本位于V1还是V2,运行现有主用版本,启动BOOT切换控制权至现有主用版本。(4)当嵌入式设备需要升级时,现有主用版本从远程服务端下载新版本,将新版本拷贝到现有备用版本位置,然后更改参数配置,将新版本设为新主用版本,将当前主用版本设为新备用版本,然后重启嵌入式设备,完成软件升级。
【技术特征摘要】
【专利技术属性】
技术研发人员:王钟颖,师炜焱,
申请(专利权)人:国家纳米技术与工程研究院,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。