System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种数据更新方法、装置、设备及存储介质制造方法及图纸_技高网

一种数据更新方法、装置、设备及存储介质制造方法及图纸

技术编号:40999688 阅读:4 留言:0更新日期:2024-04-18 21:38
本公开提供了一种数据更新方法、装置、设备及存储介质,涉及计算机技术领域。一种数据更新方法包括:获取系统管理基本输入输出系统SMBIOS的当前容量;如果操作系统处于第一状态,则从第一地址中获取SMBIOS的历史容量,第一状态为无缝挂起到内存状态;基于当前容量和历史容量,确定SMBIOS的第一容量,第一容量小于或等于历史容量;基于第一容量的SMBIOS对操作系统进行恢复,以完成对目标数据的更新。

【技术实现步骤摘要】

本公开涉及计算机,尤其涉及一种数据更新方法、装置、设备及存储介质


技术介绍

1、为了实现固件的无缝更新,目前提出了内存保留热复位(mpwr,memorypreserving warm reset)规范,mpwr规范要求在恢复(resume)操作系统(os,operatingsystem)之后,系统管理基本输入输出系统(smbios,system management basic inputoutput system)不能发生变化,但是随着固件的更新过程,smbios经常需要发生变化,导致os下与smbios相关的功能出现异常。

2、为了保证smbios在resume os前后保持不变,现有技术提出了两种解决方案:(一)若检测到smbios发生变化,则不进行resume os过程,而是启动os,按照正常流程启动进入os,但这种方法会导致mpwr流程失效,需要重新加载os下的服务;(二)定制版本os,使其能够在resume os过程中重新初始化,从而处理smbios的变化,但这种方法仅在特定的os下可行,不具有普适性。


技术实现思路

1、本公开提供了一种数据更新方法、装置、设备及存储介质,以至少解决现有技术中存在的以上技术问题。

2、根据本公开的第一方面,提供了一种数据更新方法,所述方法包括:获取系统管理基本输入输出系统smbios的当前容量;如果操作系统处于第一状态,则从第一地址中获取smbios的历史容量,所述第一状态为无缝挂起到内存状态;基于所述当前容量和所述历史容量,确定所述smbios的第一容量,所述第一容量小于或等于所述历史容量;基于第一容量的smbios对所述操作系统进行恢复,以完成对目标数据的更新。

3、在一可实施方式中,在所述获取系统管理基本输入输出系统smbios的当前容量之前,还包括:如果基本输入输出系统进入启动设备选择阶段,则在所述smbios中创建目标表格,并为所述目标表格分配目标容量,所述表格为数据结构体。

4、在一可实施方式中,所述从第一地址中获取smbios的历史容量,包括:如果所述第一地址中保存有第一标志位,则确定所述操作系统处于第一状态,所述第一标志位用于表征所述操作系统被无缝挂起到内存;在所述操作系统处于第一状态的情况下,从所述第一地址中获取smbios的历史容量;其中,所述第一地址用于存储第一标志位和smbios的历史容量。

5、在一可实施方式中,所述基于所述当前容量和所述历史容量,确定所述smbios的第一容量,包括:如果所述当前容量大于所述历史容量,则计算所述当前容量与所述历史容量的差值;将所述smbios中目标表格的目标容量减小所述差值,得到所述smbios的第一容量,以使所述第一容量与所述历史容量相等。

6、在一可实施方式中,一种数据更新方法还包括:如果所述当前容量不大于所述历史容量,则将所述当前容量确定为所述smbios的第一容量。

7、在一可实施方式中,所述基于第一容量的smbios对所述操作系统进行恢复,包括:基于第一容量的smbios将所述操作系统恢复至进入第一状态之前的状态,以完成对目标数据的更新。

8、在一可实施方式中,一种数据更新方法还包括:如果操作系统不处于第一状态,则将所述当前容量保存至所述第一地址;对所述操作系统进行启动。

9、根据本公开的第二方面,提供了一种数据更新装置,所述装置包括:第一获取模块,用于获取系统管理基本输入输出系统smbios的当前容量;第二获取模块,用于如果操作系统处于第一状态,则从第一地址中获取smbios的历史容量,所述第一状态为无缝挂起到内存状态;容量确定模块,用于基于所述当前容量和所述历史容量,确定所述smbios的第一容量,所述第一容量小于或等于所述历史容量;系统恢复模块,用于基于第一容量的smbios对所述操作系统进行恢复,以完成对目标数据的更新。

10、根据本公开的第三方面,提供了一种电子设备,包括:

11、至少一个处理器;以及

12、与所述至少一个处理器通信连接的存储器;其中,

13、所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行本公开所述的方法。

14、根据本公开的第四方面,提供了一种存储有计算机指令的非瞬时计算机可读存储介质,所述计算机指令用于使所述计算机执行本公开所述的方法。

15、应当理解,本部分所描述的内容并非旨在标识本公开的实施例的关键或重要特征,也不用于限制本公开的范围。本公开的其它特征将通过以下的说明书而变得容易理解。

本文档来自技高网...

【技术保护点】

1.一种数据更新方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,在所述获取系统管理基本输入输出系统SMBIOS的当前容量之前,还包括:

3.根据权利要求1所述的方法,其特征在于,所述从第一地址中获取SMBIOS的历史容量,包括:

4.根据权利要求1所述的方法,其特征在于,所述基于所述当前容量和所述历史容量,确定所述SMBIOS的第一容量,包括:

5.根据权利要求4所述的方法,其特征在于,还包括:

6.根据权利要求1至5任一项所述的方法,其特征在于,所述基于第一容量的SMBIOS对所述操作系统进行恢复,包括:

7.根据权利要求1所述的方法,其特征在于,还包括:

8.一种数据更新装置,其特征在于,所述装置包括:

9.一种电子设备,其特征在于,包括:

10.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使计算机执行根据权利要求1-7中任一项所述的方法。

【技术特征摘要】

1.一种数据更新方法,其特征在于,所述方法包括:

2.根据权利要求1所述的方法,其特征在于,在所述获取系统管理基本输入输出系统smbios的当前容量之前,还包括:

3.根据权利要求1所述的方法,其特征在于,所述从第一地址中获取smbios的历史容量,包括:

4.根据权利要求1所述的方法,其特征在于,所述基于所述当前容量和所述历史容量,确定所述smbios的第一容量,包括:

5.根据权利要求4所述的方法,其特征在...

【专利技术属性】
技术研发人员:张文娇姜平阁
申请(专利权)人:联想北京有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1