Flash器件切换方法、装置、计算机设备和存储介质制造方法及图纸

技术编号:36166758 阅读:62 留言:0更新日期:2022-12-31 20:16
本申请涉及一种Flash器件切换方法、装置、计算机设备和存储介质。该方法包括:在复杂可编程逻辑器件CPLD校验第一基本输入输出系统BIOS对应的第一内存器件Flash中的暂存区域、活动区域和恢复区域通过时,获取服务器上电开机命令;根据服务器上电开机命令进行服务器上电开机;在服务器上电开机未成功时,触发复杂可编程逻辑器件CPLD进行重新恢复操作;在复杂可编程逻辑器件CPLD重新恢复操作失败后,通知复杂可编程逻辑器件CPLD将第一内存器件Flash切换至第二基本输入输出系统BIOS对应的第二内存器件Flash。采用本方法能够服务器能够正常运行。常运行。常运行。

【技术实现步骤摘要】
Flash器件切换方法、装置、计算机设备和存储介质


[0001]本申请涉及硬件
,特别是涉及一种Flash器件切换方法、装置、计算机设备和存储介质。

技术介绍

[0002]当今时代,科技进步突飞猛进,尤其是服务器产品技术,依靠其强大运算能力、较好的兼容性,较强的安全性可靠的运行稳定性等等优势,使其在科技领域处于领先地位,很多厂家都会在服务器的稳定性及校验安全方面上下功夫,尤其是增加平台固件恢复功能PFR(Platform Firmware Resilence)的服务器,PFR功能因其内部有丰富的校验模块,能够很好的避免了固件被篡改的风险。
[0003]但是,目前的PFR服务器只有一个内存器件Flash,当该内存器件Flash出现问题或者损坏时,导致PFR服务器无法正常运行或者宕机情况,导致PFR服务器无法正常启动。

技术实现思路

[0004]基于此,有必要针对上述技术问题,提供一种Flash器件切换方法、装置、计算机设备和存储介质,服务器设置有双内存器件Flash,当其中一个内存器件Flash出现问题时,能够及时切换到另一个内存器件Flash,保证服务器能够正常运行。
[0005]一种Flash器件切换方法,该方法应用于服务器,服务器包括复杂可编程逻辑器件CPLD、第一基本输入输出系统BIOS和第二基本输入输出系统BIOS,其中,第一基本输入输出系统BIOS和第二基本输入输出系统BIOS包括对应的内存器件Flash,内存器件Flash包括暂存区域、活动区域和恢复区域,其中:在复杂可编程逻辑器件CPLD校验第一基本输入输出系统BIOS对应的第一内存器件Flash中的暂存区域、活动区域和恢复区域通过时,获取服务器上电开机命令;根据服务器上电开机命令进行服务器上电开机;在服务器上电开机未成功时,触发复杂可编程逻辑器件CPLD进行重新恢复操作;在复杂可编程逻辑器件CPLD重新恢复操作失败后,通知复杂可编程逻辑器件CPLD将第一内存器件Flash切换至第二基本输入输出系统BIOS对应的第二内存器件Flash。
[0006]在其中一个实施例中,在复杂可编程逻辑器件CPLD校验第一基本输入输出系统BIOS对应的第一内存器件Flash中的暂存区域、活动区域和恢复区域通过时,获取服务器上电开机命令,包括:调用复杂可编程逻辑器件CPLD通过哈希值Hash校验第一基本输入输出系统BIOS对应的第一内存器件Flash中的暂存区域、活动区域和恢复区域是否通过;当校验通过时,通过复杂可编程逻辑器件CPLD生成服务器上电开启命令。
[0007]在其中一个实施例中,调用复杂可编程逻辑器件CPLD通过哈希值Hash校验第一基本输入输出系统BIOS对应的第一内存器件Flash中的暂存区域、活动区域和恢复区域是否通过,包括:
调用复杂可编程逻辑器件CPLD从第一内存器件Flash中获取对应的暂存区域、活动区域和恢复区域对应的区域数据;调用复杂可编程逻辑器件CPLD根据各区域数据计算得到对应的基准区域哈希值;调用复杂可编程逻辑器件CPLD从第一内存器件Flash中获取对应的暂存区域、活动区域和恢复区域对应的区域哈希值;调用复杂可编程逻辑器件CPLD根据区域哈希值和基准区域哈希值确定暂存区域、活动区域和恢复区域是否通过。
[0008]在其中一个实施例中,调用复杂可编程逻辑器件CPLD根据各区域数据计算得到对应的基准区域哈希值,包括:调用复杂可编程逻辑器件CPLD获取密钥;调用复杂可编程逻辑器件CPLD根据密钥和各区域数据进行计算,得到对应的基准区域哈希值。
[0009]在其中一个实施例中,调用复杂可编程逻辑器件CPLD从第一内存器件Flash中获取对应的暂存区域、活动区域和恢复区域对应的区域哈希值,包括:调用第一内存器件Flash获取暂存区域、活动区域和恢复区域对应的区域数据和签章数据;调用第一内存器件Flash根据暂存区域、活动区域和恢复区域对应的区域数据和签章数据计算得到对应的区域哈希值。
[0010]在其中一个实施例中,上述方法还包括:通过第一内存器件Flash获取暂存区域对应的第一区域数据;通过第一内存器件Flash获取暂存区域对应的第一签章数据;通过第一内存器件Flash根据第一区域数据和第一签章数据计算得到暂存区域对应的区域哈希值。
[0011]在其中一个实施例中,上述方法还包括:通过第一内存器件Flash获取活动区域对应的第二区域数据;通过第一内存器件Flash获取活动区域对应的第二签章数据;通过第一内存器件Flash根据第二区域数据和第二签章数据计算得到活动区域对应的区域哈希值。
[0012]在其中一个实施例中,上述方法还包括:通过第一内存器件Flash获取恢复区域对应的第三区域数据;通过第一内存器件Flash获取恢复区域对应的第三签章数据;通过第一内存器件Flash根据第三区域数据和第三签章数据计算得到恢复区域对应的区域哈希值。
[0013]在其中一个实施例中,调用复杂可编程逻辑器件CPLD根据区域哈希值和基准区域哈希值确定暂存区域、活动区域和恢复区域是否通过,包括:调用复杂可编程逻辑器件CPLD根据区域哈希值和基准区域哈希值确定暂存区域、活动区域和恢复区域是否匹配,确定是否通过。
[0014]在其中一个实施例中,根据服务器上电开机命令进行服务器上电开机,包括:根据服务器上电开机命令进行服务器上电开机,并运行服务器上的主程序。
[0015]在其中一个实施例中,在服务器上电开机未成功时,触发复杂可编程逻辑器件CPLD进行重新恢复操作,包括:获取服务器上电开机的开机时间;在开机时间超过预设开机时间时,启动第一基本输入输出系统BIOS的看门狗程序,触发服务器进行重新启动操作;获取服务器进行重新启动的操作次数;在操作次数超过预设操作次数时,调用第一基本输入输出系统BIOS将通用输入输出GPIO对应的电平信号拉低,触发复杂可编程逻辑器件CPLD进行重新恢复操作。
[0016]在其中一个实施例中,触发复杂可编程逻辑器件CPLD进行重新恢复操作,包括:通过复杂可编程逻辑器件CPLD获取第一内存器件Flash中的恢复区域对应的恢复区域哈希值;通过复杂可编程逻辑器件CPLD将第一内存器件Flash中的活动区域对应的活动区域哈希值替换成恢复区域哈希值。
[0017]在其中一个实施例中,在复杂可编程逻辑器件CPLD重新恢复操作失败后,通知复杂可编程逻辑器件CPLD将第一内存器件Flash切换至第二基本输入输出系统BIOS对应的第二内存器件Flash,包括:获取复杂可编程逻辑器件CPLD重新恢复操作次数;在重新恢复操作次数超过预设次数时,通过Espi协议通知复杂可编程逻辑器件CPLD将第一内存器件Flash切换至第二基本输入输出系统BIOS对应的第二内存器件Flash。
[0018]在其中一个实施例中,服务器、复杂可编程逻辑器件CPLD、第一基本输入输出系统BIOS和第二基本输入输出系统BIOS都具备平台固件恢复功能PFR。
[0019]一本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种Flash器件切换方法,所述方法应用于服务器,所述服务器包括复杂可编程逻辑器件CPLD、第一基本输入输出系统BIOS和第二基本输入输出系统BIOS,其中,所述第一基本输入输出系统BIOS和所述第二基本输入输出系统BIOS包括对应的内存器件Flash,所述内存器件Flash包括暂存区域、活动区域和恢复区域,其中,所述方法包括:在所述复杂可编程逻辑器件CPLD校验所述第一基本输入输出系统BIOS对应的第一内存器件Flash中的所述暂存区域、所述活动区域和所述恢复区域通过时,获取服务器上电开机命令;根据所述服务器上电开机命令进行服务器上电开机;在所述服务器上电开机未成功时,触发所述复杂可编程逻辑器件CPLD进行重新恢复操作;在所述复杂可编程逻辑器件CPLD重新恢复操作失败后,通知所述复杂可编程逻辑器件CPLD将所述第一内存器件Flash切换至所述第二基本输入输出系统BIOS对应的第二内存器件Flash。2.根据权利要求1所述的方法,其特征在于,所述在所述复杂可编程逻辑器件CPLD校验所述第一基本输入输出系统BIOS对应的第一内存器件Flash中的所述暂存区域、所述活动区域和所述恢复区域通过时,获取服务器上电开机命令,包括:调用所述复杂可编程逻辑器件CPLD通过哈希值Hash校验第一基本输入输出系统BIOS对应的第一内存器件Flash中的所述暂存区域、所述活动区域和所述恢复区域是否通过;当校验通过时,通过所述复杂可编程逻辑器件CPLD生成服务器上电开启命令。3.根据权利要求2所述的方法,其特征在于,所述调用所述复杂可编程逻辑器件CPLD通过哈希值Hash校验第一基本输入输出系统BIOS对应的第一内存器件Flash中的所述暂存区域、所述活动区域和所述恢复区域是否通过,包括:调用所述复杂可编程逻辑器件CPLD从所述第一内存器件Flash中获取对应的所述暂存区域、所述活动区域和所述恢复区域对应的区域数据;调用所述复杂可编程逻辑器件CPLD根据各所述区域数据计算得到对应的基准区域哈希值;调用所述复杂可编程逻辑器件CPLD从所述第一内存器件Flash中获取对应的所述暂存区域、所述活动区域和所述恢复区域对应的区域哈希值;调用所述复杂可编程逻辑器件CPLD根据所述区域哈希值和所述基准区域哈希值确定所述暂存区域、所述活动区域和所述恢复区域是否通过。4.根据权利要求3所述的方法,其特征在于,所述调用所述复杂可编程逻辑器件CPLD根据各所述区域数据计算得到对应的基准区域哈希值,包括:调用所述复杂可编程逻辑器件CPLD获取密钥;调用所述复杂可编程逻辑器件CPLD根据所述密钥和各所述区域数据进行计算,得到对应的基准区域哈希值。5.根据权利要求3所述的方法,其特征在于,所述调用所述复杂可编程逻辑器件CPLD从所述第一内存器件Flash中获取对应的所述暂存区域、所述活动区域和所述恢复区域对应的区域哈希值,包括:调用所述第一内存器件Flash获取所述暂存区域、所述活动区域和所述恢复区域对应
的区域数据和签章数据;调用所述第一内存器件Flash根据所述暂存区域、所述活动区域和所述恢复区域对应的区域数据和所述签章数据计算得到对应的区域哈希值。6.根据权利要求5所述的方法,其特征在于,所述方法还包括:通过所述第一内存器件Flash获取所述暂存区域对应的第一区域数据;通过所述第一内存器件Flash获取所述暂存区域对应的第一签章数据;通过所述第一内存器件Flash根据所述第一区域数据和所述第一签章数据计算得到所述暂存区域对应的区域哈希值。7.根据权利要求5所述的方法,其特征在于,所述方法还包括:通过所述第一内存器件Flash获取所述活动区域对应的第二区域数据;通过所述第一内存器件Flash获取所述活动区域对应的第二签章数据;通过所述第一内存器件Flash根据所述第二区域数据和所述第二签章数据计算得到所述活动区域对应的区域哈希值。8.根据权利要求5所述的方法,其特征在于,所述方法还包括:通过所述第一内存器件Flash获取所述恢复区域对应的第...

【专利技术属性】
技术研发人员:姜守英王兵姚藩益陈正川张玉忠
申请(专利权)人:苏州浪潮智能科技有限公司
类型:发明
国别省市:

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

1