[发明专利]程序升级方法和装置在审
申请号: | 201510761262.4 | 申请日: | 2015-11-09 |
公开(公告)号: | CN105404533A | 公开(公告)日: | 2016-03-16 |
发明(设计)人: | 马争先;赵天光;孙祖祥;邝耀辉 | 申请(专利权)人: | 珠海格力电器股份有限公司 |
主分类号: | G06F9/445 | 分类号: | G06F9/445;G06F11/14 |
代理公司: | 北京康信知识产权代理有限责任公司 11240 | 代理人: | 韩建伟;张永明 |
地址: | 519070 *** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 程序 升级 方法 装置 | ||
技术领域
本发明涉及计算机领域,具体而言,涉及一种程序升级方法和装置。
背景技术
现有的程序升级技术采用直接升级的方法,该方法在程序升级过程中出现异常的情况时,如升级过程中断电、升级不成功等情况没有具体的处理办法,会导致升级之后程序运行不正常,出现乱跑乱飞的现象;另外,当程序升级过程中出现异常情况,需要恢复原来的程序,但是原来的程序已经丢失或者被删除,无法使其恢复。
针对现有的由于程序升级失败导致程序升级之后运行异常的问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种程序升级方法和装置,以至少解决由于程序升级失败导致程序升级之后运行异常的技术问题。
根据本发明实施例的一个方面,提供了一种程序升级方法,该程序升级方法包括:在程序引导区判断程序的升级状态;若判断出上述程序的升级状态为待升级状态,则在升级程序区内升级上述程序;若上述程序升级完成,则变更升级状态区中记录的上述程序的升级状态为无升级状态;若上述程序升级未完成,则保留上述升级状态区中记录的上述程序的升级状态。
进一步地,在程序引导区判断程序的升级状态之后,上述方法还包括:若判断出上述程序的升级状态为上述无升级状态,则在程序运行区运行上述程序;在上述程序运行区运行上述程序的过程中,上述方法还包括:若接收到升级指令,在升级状态区内设置升级标志位,以记录上述程序的升级状态为上述待升级状态。
进一步地,在程序引导区判断程序的升级状态包括:获取升级状态区内的升级标志位;在上述程序引导区判断上述升级标志位所指示的上述程序的升级状态;若上述升级标志位的属性值为第一预设值,则判断出上述程序的升级状态为上述待升级状态;若上述升级标志位的属性值为第二预设值,则判断出上述程序的升级状态为上述无升级状态。
进一步地,在升级程序区内升级上述程序包括:获取上述程序的升级数据;擦除上述程序的当前数据并写入上述升级数据。
进一步地,在擦除上述程序的当前数据之前,上述方法还包括:将上述程序的当前数据保存入上述程序备份区,并将上述程序备份区中保留的时间最早的版本数据删除。
进一步地,在程序引导区判断程序的升级状态之前,方法还包括:将芯片至少划分为下述区域:程序引导区、升级程序区、升级状态区、程序运行区以及程序备份区。
根据本发明实施例的另一方面,还提供了一种程序升级装置,该装置包括:判断模块,用于在程序引导区判断程序的升级状态;升级模块,用于若判断出上述程序的升级状态为待升级状态,则在升级程序区内升级上述程序;变更模块,用于若上述程序升级完成,则变更升级状态区中记录的上述程序的升级状态为无升级状态;保留模块,用于若上述程序升级未完成,则保留上述升级状态区中记录的上述程序的升级状态。
进一步地,上述装置还包括:运行模块,用于在程序引导区判断程序的升级状态之后,若判断出上述程序的升级状态为上述无升级状态,则在程序运行区运行上述程序;设置模块,用于在上述程序运行区运行上述程序的过程中,若接收到升级指令,在升级状态区内设置升级标志位,以记录上述程序的升级状态为上述待升级状态。
进一步地,上述判断模块包括:第一获取子模块,用于获取升级状态区内的升级标志位;判断子模块,用于在上述程序引导区判断上述升级标志位所指示的上述程序的升级状态;第一确定子模块,用于若上述升级标志位的属性值为第一预设值,则判断出上述程序的升级状态为上述待升级状态;第二确定子模块,用于若上述升级标志位的属性值为第二预设值,则判断出上述程序的升级状态为上述无升级状态。
进一步地,上述升级模块包括:第二获取子模块,用于获取上述程序的升级数据;擦除子模块,用于擦除上述程序的当前数据并写入上述升级数据。
进一步地,上述装置还包括:备份模块,用于在擦除上述程序的当前数据之前,将上述程序的当前数据保存入上述程序备份区,并将上述程序备份区中保留的时间最早的版本数据删除。
采用本发明实施例,在程序引导区判断出程序需要升级的情况下,在升级程序区升级该程序,若升级完成,变更升级状态;若升级不成功,不变更升级状态,则在下次开机程序引导区判断时,认为该程序需要升级,进入升级程序区升级该程序,而不是进入程序运行区运行该程序。通过上述实施例,在程序升级不成功时记录该程序的状态仍为待升级状态,从而避免了升级不成功而进入程序运行,导致程序运行混乱的情况,解决了现有技术中,由于程序升级失败导致程序升级之后运行异常的技术问题,实现了程序升级失败在下次开机时仍会升级该程序的效果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海格力电器股份有限公司,未经珠海格力电器股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510761262.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:摄影装置
- 下一篇:加强探测参考信号传输的方法及其通讯装置