[发明专利]一种固件升级方法及装置在审
| 申请号: | 202010943445.9 | 申请日: | 2020-09-09 |
| 公开(公告)号: | CN112148337A | 公开(公告)日: | 2020-12-29 |
| 发明(设计)人: | 徐仁俊 | 申请(专利权)人: | 杭州涂鸦信息技术有限公司 |
| 主分类号: | G06F8/654 | 分类号: | G06F8/654 |
| 代理公司: | 北京崇智知识产权代理有限公司 11605 | 代理人: | 任小燕;何海英 |
| 地址: | 310013 浙江省杭*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 升级 方法 装置 | ||
本发明实施例提供了一种固件升级方法及装置,其中,所述方法包括:从云服务器获取固件的头信息,所述头信息包括所述固件的各个分区固件数据的大小以及相应的分区名称;基于所述头信息从所述云服务器获取各个所述分区固件数据,并在每获得一所述分区固件数据之后,将当前所获取的分区固件数据写入Flash存储器的相应分区。本发明实施的固件升级过程采用分块升级方式,能够边下载固件数据边升级,而不需要把全部的固件数据下载来以后再升级,防止意外掉电,需要重新升级全部固件数据,并且此种升级方式能够运用在Flash存储空间较小的设备中进行固件升级。
技术领域
本发明涉及设备升级技术领域,特别是涉及一种固件升级方法及装置。
背景技术
纵观目前系统的固件升级方案几乎全部采用Recovery的方式。其具体过程为:系统首先从云服务器上获取需要升级的固件包,然后存储到本地,如分区A中,重启设备进入Recovery升级模式,在Recovery模式下从分区A中读取对应的固件包文件数据,将固件包文件数据烧录或者是写到对应的分区B中,然后重启设备运行升级后的系统。Recovery的升级模式一般用于Flash存储空间比较大的存储设备中,因为此Flash最少需要固件包两倍大小的空间才可以完成,一个是系统正常运行的固件分区,如分区B。另外一个是存储系统需要升级的固件的分区,如分区A。因此,Recovery升级模式不适合Flash存储空间较小的设备进行固件升级。
发明内容
本发明实施例的目的在于提供一种固件升级方法及装置,以适用于Flash存储空间较小的设备进行固件升级。具体技术方案如下:
本发明实施的一方面,提供了一种固件升级方法,所述方法包括:
从云服务器获取固件的头信息,所述头信息包括所述固件的各个分区固件数据的大小以及相应的分区名称;
基于所述头信息从所述云服务器获取各个所述分区固件数据,并在每获得一所述分区固件数据之后,将当前所获取的分区固件数据写入Flash存储器的相应分区。
可选的,所述将当前所获取的分区固件数据写入Flash存储器的相应分区的步骤之前,包括:
判断当前Flash存储器中是否有能够存储当前所获取的分区固件数据的备份分区;
如果有,则将当前所获取的分区固件数据写入所述备份分区,否则不将当前所获取的分区固件数据写入Flash存储器的相应分区。
可选的,所述将当前所获取的分区固件数据写入Flash存储器的相应分区的步骤之后,还包括:
如果在写入所述分区固件数据的过程中发生掉电,则在上电之后从所述备份分区中恢复出该分区固件数据。
可选的,所述将当前所获取的分区固件数据写入Flash存储器的相应分区的步骤之前,包括:
更新头信息分区中的掉电标志位;
相应的,如果在写入所述分区固件数据的过程中发生掉电,则在上电之后从所述备份分区中恢复出该分区固件数据的步骤,包括:
如果在写入所述分区固件数据的过程中发生掉电,则在上电之后,基于所述掉电标志位从所述备份分区中恢复出该分区固件数据。
可选的,所述方法还包括:
如果在写入所述分区固件数据的过程中未发生掉电,则清除所述掉电标志位。
本发明实施的又一方面,还提供的一种固件升级装置,所述装置包括:
获取模块,用于从云服务器获取固件的头信息,所述头信息包括所述固件的各个分区固件数据的大小以及相应的分区名称;
所述获取模块,还用于基于所述头信息从所述云服务器获取各个所述分区固件数据;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州涂鸦信息技术有限公司,未经杭州涂鸦信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010943445.9/2.html,转载请声明来源钻瓜专利网。





