[发明专利]对固件进行升级的方法及装置有效
申请号: | 201510420622.4 | 申请日: | 2015-07-16 |
公开(公告)号: | CN105094903B | 公开(公告)日: | 2019-02-22 |
发明(设计)人: | 刘新阳;黄玉宇;叶华林;张堂政;田景颐;张东浩 | 申请(专利权)人: | 广州飞米电子科技有限公司;小米科技有限责任公司 |
主分类号: | G06F8/654 | 分类号: | G06F8/654 |
代理公司: | 北京三高永信知识产权代理有限责任公司 11138 | 代理人: | 祝亚男 |
地址: | 511442 广东省广州市番禺区*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 进行 升级 方法 装置 | ||
本发明是关于一种对固件进行升级的方法及装置,属于计算机技术领域。该方法包括:在运行闪存的第二分区中固件的当前版本过程中,当检测到内存中存储有当前版本的升级版本时,将升级版本备份到闪存的第三分区,第三分区中存储有固件的不同版本;将闪存的第四分区中指定标识位设置为升级状态;重新启动电子设备,运行闪存的第一分区;当检测到第四分区中指定标识位为升级状态时,将升级版本写入第二分区;运行第二分区中的升级版本。本发明将固件的升级版本在闪存的第三分区进行备份,使得升级版本运行失败后,能够从第三分区中获取到备份的固件,从而避免了电子设备因固件升级失败不能正常运行,提高了升级的可靠性。
技术领域
本发明涉及计算机技术领域,尤其涉及一种对固件进行升级的方法及装置。
背景技术
固件为写入EROM(Eraseable Read Only Memory,可擦写只读存储器)或EEPROM(Ele4tri4ally Erasable Programmable Read-Only Memory,电可擦可编程只读存储器)中的程序,通俗来讲,固件也就是具有软件功能的硬件。固件在电子设备的嵌入式分布系统中承担着最基础、最底层的工作,通过对电子设备中的固件进行升级,可完善电子设备的功能、增强电子设备的稳定性、修补电子设备的漏洞。
目前,为了实现对固件的升级,常将电子设备的闪存(Flash)分为两个分区。其中一个分区用于写入Bootloader程序(Bootloader程序为一种引导启动程序,在系统内核运行前运行),另一个分区用于写入固件。电子设备启动后,先运行一个分区中的Bootloader程序,如果Bootloader程序中的升级标识位上的标识为非升级标识,则跳转到另一分区并运行另一分区中的固件;如果Bootloader程序中的升级标识位上的标识为升级标识,则删除另一分区中的固件,并将升级后的固件写入到另一分区,进而将Bootloader程序中的升级标识位上的标识重置为非升级标识,之后,重新启动电子设备,运行升级后的固件以完成对固件的升级。
发明内容
为克服相关技术中存在的问题,本发明提供一种对固件进行升级的方法及 装置。
根据本发明实施例的第一方面,提供一种对固件进行升级的方法,所述方法包括:
在运行闪存的第二分区中固件的当前版本过程中,当检测到内存中存储有当前版本的升级版本时,将所述升级版本备份到所述闪存的第三分区,所述第三分区中存储有所述固件的不同版本;
将所述闪存的第四分区中指定标识位设置为升级状态;
重新启动电子设备,运行所述闪存的第一分区;
当检测到所述第四分区中所述指定标识位为升级状态时,将所述升级版本写入所述第二分区;
运行所述第二分区中的所述升级版本。
可选地,所述将所述升级版本备份到所述闪存的第三分区之前,还包括:
启动所述电子设备;
检测所述第四分区中所述指定标识位是否为升级状态;
当检测到所述第四分区中所述指定标识为非升级状态时,进行开机自检。
可选地,所述进行开机自检,包括:
对所述第二分区中的所述当前版本进行校验;
如果对所述第二分区中的所述当前版本校验成功,则运行所述第二分区中的所述当前版本;
如果对所述第二分区中的所述当前版本校验失败,则对所述第二分区中的所述当前版本进行修复。
可选地,所述对所述第二分区中的所述当前版本进行修复之前,还包括:
将所述当前版本从所述第二分区中删除;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州飞米电子科技有限公司;小米科技有限责任公司,未经广州飞米电子科技有限公司;小米科技有限责任公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510420622.4/2.html,转载请声明来源钻瓜专利网。