[发明专利]一种硬盘固件的更新方法、装置、电子设备及存储介质在审
| 申请号: | 202111144007.7 | 申请日: | 2021-09-28 |
| 公开(公告)号: | CN114020306A | 公开(公告)日: | 2022-02-08 |
| 发明(设计)人: | 罗晓龙 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
| 主分类号: | G06F8/654 | 分类号: | G06F8/654 |
| 代理公司: | 北京三聚阳光知识产权代理有限公司 11250 | 代理人: | 王娜 |
| 地址: | 215000 江苏省苏州市*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 硬盘 更新 方法 装置 电子设备 存储 介质 | ||
本申请公开了一种硬盘固件的更新方法、装置、电子设备及存储介质。该方法包括:接收主机设备发送的固件更新指令,其中,固件更新指令中携带目标固件;从固态硬盘中查询目标固件对应的目标插槽,其中,目标插槽中包括多个存储区域;遍历目标插槽中的存储区域对应的头文件,确定满足预设写入条件的目标存储区域,并将目标固件写入目标存储区域,得到更新后的目标插槽;在固态硬盘上电启动后,基于更新后的目标插槽对目标固件进行运行。本申请实施例通过遍历目标插槽中的存储区域对应的头文件能够快速确定是否满足写入条件的目标存储区域,并将目标固件直接写入目标存储区域,不再需要对每个存储区域进行逐个排查,提高了固件更新效率。
技术领域
本申请涉及计算机技术领域,尤其涉及一种硬盘固件的更新方法、装置、电子设备及存储介质。
背景技术
SSD固件一般保存在eeprom或flash中,可由特定的刷新程序进行升级。在SSD系统启动时,处理器的固化程序加载boot loader,boot loader初始化硬件并随后加载固件。如果当前固件程序有问题,那么系统无法正常启动出现丢盘现象。
对于固件的管理,不同的厂商存在不同的管理方式,如只保存最新版本的固件和保存多个版本固件等方式。对于前者,如果升级固件时出现问题那么SSD将无法正常使用。而后者,在升级固件时需要选择一个正确位置去替换掉原来的固件,保证在系统启动时能够找到最新的有效固件。
不论哪种方式,升级时首先需要擦除一段空间,然后写入新固件。这个过程可能要耗费比较长的时间,而且一旦被异常中断,那么下次上电就无法正常启动。在启动时,需要从eprom或flash中找到最新的有效固件并加载,对于存在多个版本固件的情况,bootloader需要校验每个固件的有效性并查找出最后一次升级的固件,整个过程比较耗时。
发明内容
为了解决上述技术问题或者至少部分地解决上述技术问题,本申请提供了一种硬盘固件的更新方法、装置、电子设备及存储介质。
根据本申请实施例的一个方面,提供了一种硬盘固件的更新方法,应用于固态硬盘,所述方法包括:
接收主机设备发送的固件更新指令,其中,所述固件更新指令中携带目标固件;
从所述固态硬盘中查询所述目标固件对应的目标插槽,其中,所述目标插槽中包括多个存储区域;
遍历所述目标插槽中的存储区域对应的头文件,确定满足预设写入条件的目标存储区域,并将所述目标固件写入所述目标存储区域,得到更新后的目标插槽;
在所述固态硬盘上电启动后,基于所述更新后的目标插槽对所述目标固件进行运行。
进一步的,所述遍历所述目标插槽中的存储区域对应的头文件,确定满足预设写入条件的目标存储区域,并将所述目标固件写入所述目标存储区域,包括:
遍历所述目标插槽中的存储区域,确定所述存储区域的第一状态信息;
将所述第一状态信息为空闲状态的存储区域确定为满足预设写入条件的目标存储区域;
查询各个存储区域对应的头文件,确定所述目标固件对应的历史最大版本号;
根据所述历史最大版本号确定存储至所述目标存储区域对应头文件的当前最大版本号;
将所述目标固件写入所述目标存储区域,并将所述当前最大版本号存储至所述目标存储区域对应的头文件。
进一步的,在所述目标插槽中不存在所述第一状态信息为空闲状态的存储区域的情况下,所述方法还包括:
查询各个存储区域对应的头文件,确定所述目标固件对应的历史最大版本号以及历史最小版本号;
根据所述历史最大版本号确定存储至所述目标存储区域对应头文件的当前最大版本号;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111144007.7/2.html,转载请声明来源钻瓜专利网。





