一种无线升级手机软件的方法及系统的制作方法

文档序号:6356789阅读:188来源:国知局
专利名称:一种无线升级手机软件的方法及系统的制作方法
技术领域
本发明涉及软件升级领域,尤其涉及一种无线升级手机软件的方法及系统。
背景技术
由于电子技术的发展较快,技术革新周期相当短,造成软件的更新换代,需要对软件进行升级。随着手机的软件功能越来越复杂,基于软件的缺陷数量与软件功能呈正比的原理,此类系统在解决软件缺陷或者添加新功能时,需要更新软件的几率就会越来越大。为了提高服务质量及厂家信誉,对于已经售出的手机上的软件缺陷的修复也将是一项重要的任务。设备管理/ 无线固件更新(DM/ FOTA: Device Management/ Firmware Over-The-Air)技术的升级方式是一种全新的将手机软件由旧版本升级到新版本的无线升级软件方式。其原理是根据特殊的算法将软件新旧版本之间的差别做成一个软件包,手机将软件包从服务器上下载到手机里,由手机完成软件版本的升级。该升级方式操作方便,使用户可以在最短的时间内享受到升级软件后最新服务,给用户使用带来好的体验,也有利于手机厂商更加快速地向市场推出具有新功能的手机。但是无线固件更新升级时会修改引导加载程序和内核,并相应修改受信镜像模块中的相关校验值,也就是要升级受信镜像模块,当在升级受信镜像模块过程中若出现手机突然断电等导致手机升级中断的意外事件,将会使手机无法再使用,没有安全保障。

发明内容
本发明要解决的技术问题是提供一种安全的无线升级手机软件的方法及系统,使手机在无线升级情况下即使发生突然断电等中断手机升级的意外事件也不会导致手机出现不能修复的错误。为解决上述技术问题,本发明提供如下技术方案
本发明涉及的一种无线升级手机软件的方法包括以下步骤
51、从服务器下载软件升级包,设置进入恢复模式的重启原因和升级标志;
52、启动固件引导程序加载并校验受信镜像模块中原始设备引导加载模块的校验值,并加载运行原始设备引导加载模块;
53、启动原始设备引导加载模块加载并校验备份受信镜像模块中引导加载程序的校验
值;
54、校验引导加载程序的校验值是否成功;
否,则重新烧录软件信息;
是,则加载并运行引导加载程序,进入步骤S5 ;
55、启动引导加载程序检查是否有升级标志;
否,则加载正常模式的内核,并正常启动;是,则加载并运行恢复模式的内核,挂载备份受信镜像模块,进入步骤S6 ;
56、启动固件无线更新升级工具开始运行升级过程,并更新备份受信镜像模块;
57、清除升级标志。本发明还提供了一种无线升级手机软件的系统,包括
下载装置,从服务器下载软件升级包,设置进入恢复模式的重启原因和升级标志;第一校验装置,启动固件引导程序加载并校验受信镜像模块中原始设备引导加载模块的校验值,并加载运行原始设备引导加载模块;
第二校验装置,启动原始设备引导加载模块加载并校验备份受信镜像模块中引导加载程序的校验值;
第三校验装置,校验引导加载程序的校验值是否成功;
否,则重新烧录软件信息;
是,则加载并运行引导加载程序;
检查装置,启动引导加载程序检查是否有升级标志;
否,则加载正常模式的内核,并正常启动;
是,则加载并运行恢复模式的内核,挂载备份受信镜像模块;
升级装置,启动固件无线更新升级工具开始运行升级过程,并更新备份受信镜像模
块;
清除装置,清除升级标志。与现有技术相比本发明具有如下有益效果本发明提供的一种无线升级手机软件的方法及系统,通过引入备份受信镜像模块,在手机软件的无线固件更新升级过程中,升级的是备份受信镜像模块,如果在升级备份受信镜像模块时出现错误,破坏的是备份受信镜像模块,而使受信镜像模块得到保护。备份受信镜像模块受到破坏后可以通过烧录软件信息来进行恢复,从而保障手机在无线固件更新升级过程中的安全。


图I是现有技术无线升级手机软件的方法流程图。图2是本发明实施例提供的无线升级手机软件的方法流程图。图3是本发明实施例提供的无线升级手机软件的系统结构框图。
具体实施例方式为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。图I是现有技术无线升级手机软件的方法流程图,该无线升级方法包括以下步骤
I、从服务器下载软件升级包,设置进入恢复模式的重启原因和升级标志。所述软件升级包是比较新版本的系统镜像文件和手机系统当前版本的系统镜像文件得到的差分包。所述设置进入恢复模式的重启原因和升级标志具体是指将一个进入恢复模式的重启原因和升级标志写入寄存器。所述恢复模式即手机软件升级时进入的模式。
2、启动固件引导程序(Bootrom)加载并校验受信镜像模块(TIM :Trusted ImageModule)中原始设备引导加载模块(OBM :OEM Boot-Ioader Module)中的校验值,如果校验成功,则加载并运行原始设备引导加载模块。手机中的受信镜像模块中存储有原始设备引导加载模块的校验值,引导加载程序(BLOB)的校验值以及内核(kernel)的校验值,用来校验相关的原始设备引导加载模块、引导加载程序及内核三个部分的数据是否有被破坏或者是未经加密签名的文件。原始设备引导加载模块在出厂之后默认是固定不让修改的,故此步骤中校验受信镜像模块中原始设备引导加载模块的校验值在最开始没被升级破坏的情况下一般可以通过。但是一旦校验原始设备引导加载模块的校验值不能通过就无法启动原始设备引导加载模块,由于手机的烧录软件信息就存储在原始设备引导加载模块中,这样手机就不能通过重新烧录手机软件信息来恢复使用,导致手机完全无法使用。3、启动原始设备引导加载模块加载并校验受信镜像模块中引导加载程序的校验值。4、校验引导加载程序的校验值是否成功。校验不成功,因为原始设备引导加载模 块已经启动,我们可以通过重新烧录软件信息的方式恢复手机使用,如果校验成功,则加载并运行引导加载程序。5、启动引导加载程序检查是否有升级标志。如果重启原因不是设置的升级标志,则加载正常模式的内核,并正常启动。所述正常模式即手机正常启动的模式。如果重启原因是定义好的升级标志的话,手机进入一个专门的升级模式,也就是恢复模式,加载并把控制权交给内核。加载并运行恢复模式的内核,挂载受信镜像模块。6、启动固件无线更新升级工具开始运行升级过程,并更新受信镜像模块。在固件无线更新升级工具开始运行升级过程中更改引导加载程序和内核,相应地,更新受信镜像模块中储存的引导加载程序的校验值以及内核的校验值,在更新更新受信镜像模块的过程若出现手机没电等中断升级的意外情况,受信镜像模块中的校验值就会出现错误,而受信镜像模块中包括原始设备引导加载模块的校验值、引导加载程序的校验值以及内核的校验值,虽然更新的只是引导加载程序的校验值以及内核的校验值,但是只要引导加载程序的校验值以及内核的校验值任何一个出现错误都会导致整个受信镜像模块不能打开,从而在下次进行升级过程中上述步骤2中校验受信镜像模块中原始设备引导加载模块的校验值这一步骤不能通过,那么就无法加载运行原始设备引导加载模块,由于手机的烧录软件信息就存储在原始设备引导加载模块中,因此不能通过重新烧录手机软件信息来恢复使用。7、启动固件无线更新升级工具清除升级标志。8、升级标志清除后重新启动手机。从上述现有的无线升级手机软件的方法中我们可以知道,现有的无线升级手机软件的方法若在升级受信镜像模块过程中出现手机突然断电等中断升级的意外事件将会导致手机无法再使用,没有安全保障。为克服上述技术问题,本发明实施例提供一种安全的无线升级手机软件的方法。如图2所示,是本发明实施例提供的无线升级手机软件的方法流程图,该无线升级方法包括以下步骤
SI、从服务器下载软件升级包,设置进入恢复模式的重启原因和升级标志。所述软件升级包是比较新版本的系统镜像文件和手机系统当前版本的系统镜像文件得到的差分包。所述设置进入恢复模式的重启原因和升级标志具体是指将一个进入恢复模式的重启原因和升级标志写入寄存器。所述恢复模式即手机软件升级时进入的模式。S2、启动固件引导程序加载并校验受信镜像模块中原始设备引导加载模块的校验值,并加载运行原始设备引导加载模块。本实施例中的受信镜像模块中存储有原始设备引导加载模块校验值,用来校验原始设备引导加载模块的数据是否有被破坏或者是未经加密签名的文件。原始设备引导加载模块在出厂之后默认是固定不让修改的,故此步骤中校验受信镜像模块中原始设备引导加载模块的校验值一般可以通过。如果校验成功,则加载并运行原始设备引导加载模块。S3、启动原始设备引导加载模块加载并校验备份受信镜像模块(DTIM: DoubleTrusted Image Module)中引导加载程序的校验值。本实施例中的备份受信镜像模块中存储有引导加载程序的校验值以及内核的校验值,用来校验引导加载程序和内核两个部分数据是否有被破坏或者是未经加密签名的文件。
S4、校验引导加载程序的校验值是否成功。校验不成功,因为原始设备引导加载模块已经启动,我们可以通过重新烧录软件信息的方式恢复手机使用,如果校验成功,则加载并运行引导加载程序。S5、启动引导加载程序检查是否有升级标志。如果重启原因不是定义的升级标志,则加载正常模式的内核,并正常启动。所述正常模式即手机正常启动的模式。如果重启原因是定义好的升级标志的话,手机进入一个专门的升级模式,也就是恢复模式,加载并运行恢复模式的内核,挂载备份受信镜像模块。S6、启动固件无线更新升级工具开始运行升级过程,并更新备份受信镜像模块。在固件无线更新升级工具开始运行升级过程中更改引导加载程序和内核,相应地,更新备份受信镜像模块中储存的引导加载程序的校验值以及内核的校验值,在更新更新受信镜像模块的过程若出现手机没电等中断升级的意外情况,只有备份受信镜像模块的校验值出现错误,从而破坏掉备份受信镜像模块,但是因为受信镜像模块没有被更改和破坏,因此可以通过重新烧录手机软件信息来恢复使用。而受信镜像模块中只包括原始设备引导加载模块的校验值,在软件进行升级的过程中并没有被更改,所以在下次进行升级过程中上述步骤S2中校验受信镜像模块中原始设备引导加载模块的校验值这一步骤一直可以通过,由于手机的烧录软件信息就存储在原始设备引导加载模块中,因此就算在升级过程中出现中断升级的意外情况也可以通过重新烧录手机软件信息来恢复手机的使用。 S7、启动固件无线更新升级工具清除升级标志。S8、升级标志清除后重新启动手机。图3是本发明实施例提供的无线升级手机软件的系统结构框图。本发明实施例提供的一种无线升级手机系统,包括下载装置100、下载装置100、第二校验装置300、第三校验装置400、检查装置500、升级装置600、清除装置700及重启装置800。下载装置100,用于从服务器下载软件升级包,设置进入恢复模式的重启原因和升级标志。第一校验装置200,用于启动固件引导程序加载并校验受信镜像模块中原始设备引导加载模块的校验值,并加载运行原始设备引导加载模块。受信镜像模块存储有原始设备引导加载模块的校验值。第二校验装置300,用于启动原始设备引导加载模块加载并校验备份受信镜像模块中引导加载程序的校验值。备份受信镜像模块中存储有引导加载程序的校验值以及内核的校验值。第三校验装置400,用于校验引导加载程序的校验值是否成功。若校验不成功,则重新烧录软件信息。若校验成功,则加载并运行引导加载程序。检查装置500,用于启动引导加载程序检查是否有升级标志。若没有升级标志则加载正常模式的内核,并正常启动手机。若有升级标志,则加载并运行恢复模式的内核,挂载备份受信镜像模块。升级装置600,用于启动固件无线更新升级工具开始运行升级过程,并更新备份受信镜像模块。更新备份受信镜像模块中储存的引导加载程序的校验值以及内核的校验值,在更新更新受信镜像模块的过程若出现手机没电等中断升级的意外情况,只有备份受信镜像模块的校验值出现错误,从而破坏掉备份受信镜像模块,但是因为受信镜像模块没有被更改和破坏,因此可以通过重新烧录手机软件信息来恢复使用。清除装置700,用于启动固件无线更新升级工具清除升级标志。在升级过程完成后,清除装置700会清除升级标志,使下一次手机启动的时候,不会进入系统升级的状态。重启装置800,用于清除升级标志后重新启动手机。与现有技术相比本发明的实施例具有如下有益效果本发明的实施例提供的一种无线升级手机软件的方法及系统,将原始设备引导加载模块的校验值和储存在受信镜像模块,将引导加载程序的校验值以及内核的校验值储存在备份受信镜像模块,在手机软件的升级过程中,升级的是备份受信镜像模块,如果在升级备份受信镜像模块时出现错误,破坏的是备份受信镜像模块,而受信镜像模块得到保护。备份受信镜像模块受到破坏后可以通过烧录软件信息来进行恢复,从而保障手机在无线固件更新升级过程中的安全。这对手机生产商和终端用户来说都有极大的好处。对生产商来说,不会因为一次下载失败而使手机报废,可以极大地提高经济效益。对用户来说,可以享受更多的最新业务和优质的服务。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种无线升级手机软件的方法,其特征在于,包括以下步骤 51、从服务器下载软件升级包,设置进入恢复模式的重启原因和升级标志; 52、启动固件引导程序加载并校验受信镜像模块中原始设备引导加载模块的校验值,并加载运行原始设备引导加载模块; 53、启动原始设备引导加载模块加载并校验备份受信镜像模块中引导加载程序的校验值; 54、校验引导加载程序的校验值是否成功; 否,则重新烧录软件信息; 是,则加载并运行引导加载程序,进入步骤S5 ; 55、启动引导加载程序检查是否有升级标志; 否,则加载正常模式的内核,并正常启动; 是,则加载并运行恢复模式的内核,挂载备份受信镜像模块,进入步骤S6 ; 56、启动固件无线更新升级工具开始运行升级过程,并更新备份受信镜像模块; 57、清除升级标志。
2.根据权利要求I所述的ー种无线升级手机软件的方法,其特征在于,所述受信镜像模块存储有原始设备引导加载模块的校验值,所述备份受信镜像模块中存储有引导加载程序的校验值以及内核的校验值。
3.根据权利要求I所述的ー种无线升级手机软件的方法,其特征在于,所述软件升级包是比较新版本的系统镜像文件和手机系统当前版本的系统镜像文件得到的差分包。
4.根据权利要求I所述的ー种无线升级手机软件的方法,其特征在于,所述步骤S7还包括以下步骤 58、重新启动手机。
5.根据权利要求I所述的ー种无线升级手机软件的方法,其特征在于,所述原始设备弓I导加载模块存储有烧录软件信息。
6.一种无线升级手机软件的系统,其特征在于,包括 下载装置,从服务器下载软件升级包,设置进入恢复模式的重启原因和升级标志; 第一校验装置,启动固件引导程序加载并校验受信镜像模块中原始设备引导加载模块的校验值,并加载运行原始设备引导加载模块; 第二校验装置,启动原始设备引导加载模块加载并校验备份受信镜像模块中引导加载程序的校验值; 第三校验装置,校验引导加载程序的校验值是否成功; 否,则重新烧录软件信息; 是,则加载并运行引导加载程序; 检查装置,启动引导加载程序检查是否有升级标志; 否,则加载正常模式的内核,并正常启动; 是,则加载并运行恢复模式的内核,挂载备份受信镜像模块; 升级装置,启动固件无线更新升级工具开始运行升级过程,并更新备份受信镜像模块; 清除装置,清除升级标志。
7.根据权利要求6所述的ー种无线升级手机软件的系统,其特征在于,还包括重启装置,用于清除升级标志后重新启动手机。
全文摘要
本发明公开了一种无线升级手机软件的方法,包括以下步骤步骤1、下载软件升级包并设置升级标志;步骤2、校验受信镜像模块中原始设备引导加载模块的校验值;步骤3、校验备份受信镜像模块中引导加载程序的校验值;步骤4、校验引导加载程序的校验值是否成功,检验成功加载引导加载程序;步骤5、检查是否有升级标志,无升级标志则加载正常模式的内核,并正常启动;有升级标志则加载并运行恢复模式的内核,挂载备份受信镜像模块;步骤6、运行升级过程,并更新备份受信镜像模块;步骤7、清除升级标志。本发明还公开了一种无线升级手机软件的系统。本发明提供的一种无线升级手机软件的方法及系统可以保障手机在无线升级过程中的安全。
文档编号G06F9/445GK102693139SQ20111007318
公开日2012年9月26日 申请日期2011年3月25日 优先权日2011年3月25日
发明者张雷 申请人:比亚迪股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1