一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

转储服务器BIOS镜像的方法、装置、设备和介质与流程

2023-01-15 11:08:57 来源:中国专利 TAG:

转储服务器bios镜像的方法、装置、设备和介质
技术领域
1.本技术涉及服务器监控管理技术领域,特别是涉及一种转储服务器bios镜像的方法、操作方法、装置、计算机设备和存储介质。


背景技术:

2.随着服务器的功能日益强大、复杂,其基于输入输出系统(basic input output system,bios)固件程序越来越大,bios固件程序通常存储在闪存(flash)里面。目前,flash一般采用串行外设接口(serial peripheral interface,spi)等低速接口与服务器中的处理器(central processing unit,cpu)互联。
3.对于服务器的监控管理,现有行业通用的是的intel官方发布的在线崩溃转储(acd)工具,此工具对机房的故障诊断具有局限性。服务器在正常模式下,基板管理控制器(bmc)才可以和集成南桥(pch)上的管理引擎me通信。当服务器发生宕机等故障时,无服务器法通过基板管理控制器(bmc)和集成南桥(pch)上的管理引擎me进行通信,此时需要对故障问题进行排查。当me损坏和数据接口通讯总线(peci,由intel提出)挂死后,acd工具也无法和cpu通讯,无法获取cpu寄存器信息,影响线上机房问题排查。


技术实现要素:

4.基于此,有必要针对上述技术问题,提供一种转储服务器bios镜像的方法、操作方法、装置、计算机设备和存储介质,能够解决当me损坏和数据接口通讯总线(peci)挂死后,acd工具也无法和cpu通讯,无法获取cpu寄存器信息,影响线上机房问题排查的技术问题。
5.一方面,提供一种转储服务器bios镜像的方法,所述方法包括:
6.所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令,所述复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现所述bios存储器通过所述通路选通芯片(switch mux)与所述基板管理控制器bmc相连通;
7.将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下;
8.根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段;
9.在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性;
10.恢复所述bios存储器(bios rom)中bios固件程序的控制权,实现所述基板管理控制器bmc通过所述通路选通芯片(switch mux)与所述集成南桥pch相连通。
11.在其中一个实施例中,所述集成南桥pch中存储管理引擎me;
12.在所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令之前,还包括:选择是否将管理引擎me进入恢复(recovery)模式;当服务器系统未宕机时选择管理引擎me进入恢复(recovery)模式,当服务器系统宕机时选择管理引擎me不进入恢复(recovery)模式;
13.当所述管理引擎me进入恢复(recovery)模式时,在恢复所述bios存储器(bios rom)中bios固件程序的控制权之后,还包括:将所述管理引擎me切换到正常模式,实现所述基板管理控制器bmc与所述集成南桥pch上的所述管理引擎me进行通信。
14.在其中一个实施例中,当服务器系统宕机时,在转储bios镜像之后以及在恢复所述bios存储器(bios rom)中bios固件程序的控制权之前,还包括:
15.将所述bios固件程序从所述基板管理控制器bmc的文件系统中卸载并重装。
16.在其中一个实施例中,所述根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段步骤包括:
17.根据所述bios存储器(bios rom)中的bios闪存(bios flash)大小配置文件读写长度,所述bios闪存内存放bios镜像以及哈希值字段;
18.根据所述bios闪存的实际读写长度,读取并转储所述bios镜像以及所述哈希值字段。
19.在其中一个实施例中,在所述bios固件程序每次启动完成后会将全部镜像按照sha256算法生成对应的哈希值,并保存在所述bios闪存的固定地址;
20.在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性步骤具体包括:按照sha256算法再次计算生成哈希值与所述哈希值字段中的哈希值对比;当哈希值相同时,判定所转储的bios镜像以及哈希值字段内容正确;当哈希值不同时,判定所转储的bios镜像以及哈希值字段内容错误,重新转储bios镜像以及哈希值字段。以此方式校验bios镜像文件的准确性。
21.在其中一个实施例中,所述基板管理控制器bmc、所述集成南桥pch、所述复杂可编程逻辑器件cpld以及所述bios存储器均通过串行外设接口spi链路链接在所述通路选通芯片(switch mux)上;按照spi总线协议读取并转储所述bios闪存中的所述bios镜像以及所述哈希值字段数据;
22.所述集成南桥pch连接至处理器cpu;在恢复所述bios存储器(bios rom)中bios固件程序的控制权后,实现所述基板管理控制器bmc和所述处理器cpu实时交互,所述基板管理控制器bmc获取所述处理器cpu的温度信息,当所述处理器cpu。
23.另一方面,提供了一种转储服务器bios镜像的操作方法,包括步骤:
24.设置服务器中的基板管理控制器bmc通过通路选通芯片分别与集成南桥pch、复杂可编程逻辑器件cpld以及存储bios固件程序的bios存储器互联;
25.在所述基板管理控制器bmc中安装转储工具;所述转储工具中包括实现前文所述转储服务器bios镜像的方法的计算机程序;
26.运行所述转储工具将所述bios镜像下载到所述基板管理控制器bmc的文件系统中;以及
27.通过wget命令或者scp命令将下载后的bios镜像拷贝到本地存储介质中。
28.另一方面,提供了一种转储服务器bios镜像的装置,所述装置包括:
29.链路切换控制模块,用于所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令,所述复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现所述bios存储器通过所述通路选通芯片(switch mux)与所述基板管理控制器bmc相连通;
30.控制权转移模块,用于将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下;
31.转储执行模块,用于根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段;
32.bios镜像文件校验模块,用于在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性;
33.控制权恢复模块,用于恢复所述bios存储器(bios rom)中bios固件程序的控制权,实现所述基板管理控制器bmc通过所述通路选通芯片(switch mux)与所述集成南桥pch相连通。
34.在其中一个实施例中,所述装置还包括:
35.me模式切换模块,用于将所述集成南桥pch中存储的管理引擎me可选择地进入恢复(recovery)模式;并用于将所述管理引擎me从恢复(recovery)模式切换到正常模式,实现所述基板管理控制器bmc与所述集成南桥pch上的所述管理引擎me进行通信。
36.再一方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:
37.所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令,所述复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现所述bios存储器通过所述通路选通芯片(switch mux)与所述基板管理控制器bmc相连通;
38.将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下;
39.根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段;
40.在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性;
41.恢复所述bios存储器(bios rom)中bios固件程序的控制权,实现所述基板管理控制器bmc通过所述通路选通芯片(switch mux)与所述集成南桥pch相连通。
42.又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
43.所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令,所述复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现所述bios存储器通过所述通路选通芯片(switch mux)与所述基板管理控制器bmc相连通;
44.将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下;
45.根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段;
46.在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性;
47.恢复所述bios存储器(bios rom)中bios固件程序的控制权,实现所述基板管理控制器bmc通过所述通路选通芯片(switch mux)与所述集成南桥pch相连通。
48.上述转储服务器bios镜像的方法、操作方法、装置、计算机设备和存储介质,通过利用复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现bios存储器与
基板管理控制器bmc相连通,然后将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下来转储bios镜像及哈希值字段,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性,然后恢复bios存储器中bios固件程序的控制权,实现了对bios镜像文件的转储,以便进行bios固件程序问题复现,检查me镜像是否损坏,也可在服务器开机状态下以用户无感的方式获取bios固件程序配置内容。
附图说明
49.为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
50.图1为一个实施例中转储服务器bios镜像的方法及操作方法的应用环境图;
51.图2为一个实施例中转储服务器bios镜像的方法的流程示意图;
52.图3为一个实施例中根据所述bios存储器的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段步骤的流程示意图;
53.图4为一个实施例中转储服务器bios镜像的操作方法的流程示意图;
54.图5为一个实施例中转储服务器bios镜像的装置的结构框图;
55.图6为一个实施例中计算机设备的内部结构图。
具体实施方式
56.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
57.如背景技术所述,服务器在正常模式下,基板管理控制器(bmc)才可以和集成南桥(pch)上的管理引擎me通信。为了在当me损坏和数据接口通讯总线(peci)挂死后,acd工具也无法和cpu通讯时,实现能够转储获取bios存储器(bios rom)中的bios镜像文件,以便进行bios固件程序问题复现,检查me镜像是否损坏,并可在服务器开机状态下以用户无感的方式获取bios固件程序配置内容。本发明实施例中创造性的提出了一种转储服务器bios镜像的方法,将该转储服务器bios镜像的方法的实现流程编译成一个app,放在bmc下,当服务器出现宕机时,可手动执行该app工具,此时会给cpld发送命令,cpld操作硬件。借助该app工具实现转储bios镜像的操作,最后恢复bios存储器中bios固件程序的控制权,恢复服务器。
58.本技术提供的转储服务器bios镜像的方法,可以应用于如图1所示的应用环境中。其中,服务器包括通路选通芯片(switch mux)、基板管理控制器bmc、存储管理引擎me的集成南桥pch、复杂可编程逻辑器件cpld以及存储bios固件程序的bios存储器,所述基板管理控制器bmc、所述集成南桥pch、所述复杂可编程逻辑器件cpld以及所述bios存储器均通过串行外设接口spi链路链接在所述通路选通芯片(switch mux)上;其中基板管理控制器bmc通过通路选通芯片(switch mux)分别与集成南桥pch、复杂可编程逻辑器件cpld以及存储bios固件程序的bios存储器互联。switch mux是一个通路选通互联芯片,内置8个通道
(channel),cpld可控制哪两个channel互通。me是指集成南桥pch中一个独立于cpu和操作系统的微处理器。me里面有用于远程管理的功能,在出现严重漏洞的时可以在不受用户操控下远程管理计算机。
59.其中所述集成南桥pch连接至处理器cpu。所述集成南桥pch为cpu启动的对外低速扩展接口。服务器在正常模式下,基板管理控制器(bmc)和集成南桥(pch)上的管理引擎me通信,实现所述基板管理控制器bmc和所述处理器cpu实时交互,所述基板管理控制器bmc获取所述处理器cpu的温度信息,当所述处理器cpu的温度超过温度阈值时发出告警信息并对风扇调速。
60.在一个实施例中,如图2所示,提供了一种转储服务器bios镜像的方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
61.步骤s2,所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令,所述复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现所述bios存储器通过所述通路选通芯片(switch mux)与所述基板管理控制器bmc相连通;
62.步骤s3,将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下;
63.步骤s4,根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段;
64.步骤s5,在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性;
65.步骤s7,恢复所述bios存储器(bios rom)中bios固件程序的控制权,实现所述基板管理控制器bmc通过所述通路选通芯片(switch mux)与所述集成南桥pch相连通。
66.在本实施例中,由于所述集成南桥pch中存储有管理引擎me。如图2所示,在所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令之前,还包括:步骤s1,选择是否将管理引擎me进入恢复(recovery)模式;当服务器系统未宕机时选择管理引擎me进入恢复(recovery)模式,当服务器系统宕机时选择管理引擎me不进入恢复(recovery)模式。
67.可理解的是,在服务器系统未宕机时,管理引擎me进入恢复(recovery)模式,以便在系统未宕机时使用本工具不影响os正常使用。可通过参数来决定是否执行管理引擎me不进入恢复(recovery)模式步骤,以便覆盖me挂死时的场景。管理引擎me进入恢复(recovery)模式,可实现转储bios镜像以及所述bios固件程序每次启动时生成的哈希值字段,检查bios固件程序或me镜像是否损坏,可实现在服务器开机状态下以用户无感的方式获取bios配置选项内容。
68.如图2所示,当所述管理引擎me进入恢复(recovery)模式时,在恢复所述bios存储器(bios rom)中bios固件程序的控制权之后,还包括:步骤s8,将所述管理引擎me切换到正常模式,实现所述基板管理控制器bmc与所述集成南桥pch上的所述管理引擎me进行通信。
69.如图2所示,在本实施例中,当服务器系统宕机时,在转储bios镜像之后以及在恢复所述bios存储器(bios rom)中bios固件程序的控制权之前,还包括:
70.步骤s6,将所述bios固件程序从所述基板管理控制器bmc的文件系统中卸载并重装。
71.可理解的是,在服务器系统未宕机则可选择不重装bios固件程序,可也手动控制操作实现将所述bios固件程序从所述基板管理控制器bmc的文件系统中卸载并重装。
72.如图3所示,在本实施例中,所述根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段步骤包括:
73.步骤s41,根据所述bios存储器(bios rom)中的bios闪存(bios flash)大小配置文件读写长度,所述bios闪存内存放bios镜像以及哈希值字段;
74.步骤s42,根据所述bios闪存的实际读写长度,读取并转储所述bios镜像以及所述哈希值字段。
75.在本实施例中,在所述bios固件程序每次启动完成后会将全部镜像按照sha256算法生成对应的哈希值,并保存在所述bios闪存的固定地址;
76.在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性步骤s5,具体包括:按照sha256算法再次计算生成哈希值与所述哈希值字段中的哈希值对比;当哈希值相同时,判定所转储的bios镜像以及哈希值字段内容正确;当哈希值不同时,判定所转储的bios镜像以及哈希值字段内容错误,重新转储bios镜像以及哈希值字段。以此方式校验bios镜像文件的准确性。
77.其中,sha256算法使用的哈希值长度是256位。这是一个抽象类。此类的唯一实现是sha256managed。sha256就是一个哈希函数。哈希函数,又称散列算法,是一种从任何一种数据中创建小的数字“指纹”的方法。散列函数把消息或数据压缩成摘要,使得数据量变小,将数据的格式固定下来。该函数将数据打乱混合,重新创建一个叫做散列值(或哈希值)的指纹。散列值通常用一个短的随机字母和数字组成的字符串来代表。对于任意长度的消息,sha256都会产生一个256bit长的哈希值,称作消息摘要。
78.在本实施例中,所述基板管理控制器bmc、所述集成南桥pch、所述复杂可编程逻辑器件cpld以及所述bios存储器均通过串行外设接口spi链路链接在所述通路选通芯片(switch mux)上;按照spi总线协议读取并转储所述bios闪存中的所述bios镜像以及所述哈希值字段数据;所述集成南桥pch连接至处理器cpu;在恢复所述bios存储器(bios rom)中bios固件程序的控制权后,实现所述基板管理控制器bmc和所述处理器cpu实时交互,所述基板管理控制器bmc获取所述处理器cpu的温度信息,当所述处理器cpu。
79.另一方面,如图4所示,提供了一种转储服务器bios镜像的操作方法,包括步骤:
80.步骤s11,设置服务器中的基板管理控制器bmc通过通路选通芯片分别与集成南桥pch、复杂可编程逻辑器件cpld以及存储bios固件程序的bios存储器互联;
81.步骤s12,在所述基板管理控制器bmc中安装转储工具;所述转储工具中包括实现前文所述转储服务器bios镜像的方法的计算机程序;
82.步骤s13,运行所述转储工具将所述bios镜像下载到所述基板管理控制器bmc的文件系统中;以及
83.步骤s14,通过wget命令或者scp命令将下载后的bios镜像拷贝到本地存储介质中。
84.如图1所示,所述转储服务器bios镜像的操作方法的原理可参考前文内容,在此不做赘述。
85.该转储服务器bios镜像的操作方法中,将前文所述转储服务器bios镜像的方法的
计算机程序编译成一个app,放在bmc下。当服务器出现宕机时,可手动执行该app工具,此时会给cpld发送命令,cpld操作硬件。借助该app工具实现转储bios镜像的操作,最后恢复bios存储器中bios固件程序的控制权,恢复服务器。
86.上述转储服务器bios镜像的方法及操作方法中,通过利用复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现bios存储器与基板管理控制器bmc相连通,然后将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下来转储bios镜像及哈希值字段,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性,然后恢复bios存储器中bios固件程序的控制权,实现了对bios镜像文件的转储,以便进行bios固件程序问题复现,检查me镜像是否损坏,也可在服务器开机状态下以用户无感的方式获取bios固件程序配置内容。
87.应该理解的是,虽然图2-图4的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-图6中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
88.在一个实施例中,如图5所示,提供了一种转储服务器bios镜像的装置10,包括:链路切换控制模块1、控制权转移模块2、转储执行模块3、bios镜像文件校验模块4、控制权恢复模块5、me模式切换模块6。
89.所述链路切换控制模块1用于所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令,所述复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现所述bios存储器通过所述通路选通芯片(switch mux)与所述基板管理控制器bmc相连通。
90.所述控制权转移模块2用于将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下。
91.所述转储执行模块3用于根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段;
92.bios镜像文件校验模块4用于在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性;
93.所述控制权恢复模块5用于恢复所述bios存储器(bios rom)中bios固件程序的控制权,实现所述基板管理控制器bmc通过所述通路选通芯片(switch mux)与所述集成南桥pch相连通;
94.所述me模式切换模块6用于将所述集成南桥pch中存储的管理引擎me可选择地进入恢复(recovery)模式;并用于将所述管理引擎me从恢复(recovery)模式切换到正常模式,实现所述基板管理控制器bmc与所述集成南桥pch上的所述管理引擎me进行通信。
95.在本实施例中,所述集成南桥pch中存储管理引擎me;如图5所示,所述转储服务器bios镜像的装置10还包括:me模式切换模块7。所述me模式切换模块7用于将所述集成南桥pch中存储的管理引擎me可选择地进入恢复(recovery)模式;并用于将所述管理引擎me从
恢复(recovery)模式切换到正常模式,实现所述基板管理控制器bmc与所述集成南桥pch上的所述管理引擎me进行通信。
96.具体的,在所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令之前,所述me模式切换模块7用于选择是否将管理引擎me进入恢复(recovery)模式;当服务器系统未宕机时选择管理引擎me进入恢复(recovery)模式,当服务器系统宕机时选择管理引擎me不进入恢复(recovery)模式。
97.当所述管理引擎me进入恢复(recovery)模式时,在恢复所述bios存储器(bios rom)中bios固件程序的控制权之后,所述me模式切换模块7用于:将所述管理引擎me切换到正常模式,实现所述基板管理控制器bmc与所述集成南桥pch上的所述管理引擎me进行通信。
98.如图5所示,在本实施例中,所述转储服务器bios镜像的装置10还包括:bios固件程序管理模块8。当服务器系统宕机时,在转储bios镜像之后以及在恢复所述bios存储器(bios rom)中bios固件程序的控制权之前,所述bios固件程序管理模块8用于:将所述bios固件程序从所述基板管理控制器bmc的文件系统中卸载并重装。
99.在本实施例中,所述根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段步骤包括:
100.根据所述bios存储器(bios rom)中的bios闪存(bios flash)大小配置文件读写长度,所述bios闪存内存放bios镜像以及哈希值字段;
101.根据所述bios闪存的实际读写长度,读取并转储所述bios镜像以及所述哈希值字段。
102.在本实施例中,在所述bios固件程序每次启动完成后会将全部镜像按照sha256算法生成对应的哈希值,并保存在所述bios闪存的固定地址;
103.在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性步骤具体包括:按照sha256算法再次计算生成哈希值与所述哈希值字段中的哈希值对比;当哈希值相同时,判定所转储的bios镜像以及哈希值字段内容正确;当哈希值不同时,判定所转储的bios镜像以及哈希值字段内容错误,重新转储bios镜像以及哈希值字段。以此方式校验bios镜像文件的准确性。
104.在本实施例中,所述基板管理控制器bmc、所述集成南桥pch、所述复杂可编程逻辑器件cpld以及所述bios存储器均通过串行外设接口spi链路链接在所述通路选通芯片(switch mux)上;按照spi总线协议读取并转储所述bios闪存中的所述bios镜像以及所述哈希值字段数据;
105.所述集成南桥pch连接至处理器cpu;在恢复所述bios存储器(bios rom)中bios固件程序的控制权后,实现所述基板管理控制器bmc和所述处理器cpu实时交互,所述基板管理控制器bmc获取所述处理器cpu的温度信息,当所述处理器cpu。
106.上述转储服务器bios镜像的装置中,通过利用复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现bios存储器与基板管理控制器bmc相连通,然后将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下来转储bios镜像及哈希值字段,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性,然后恢复bios存储器中bios固件程序的控制权,实现了对bios镜像文件的转储,以便进行bios固件
程序问题复现,检查me镜像是否损坏,也可在服务器开机状态下以用户无感的方式获取bios固件程序配置内容。
107.关于转储服务器bios镜像的装置的具体限定可以参见上文中对于转储服务器bios镜像的方法的限定,在此不再赘述。上述转储服务器bios镜像的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
108.在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统、程序的运行提供环境。该计算机设备的数据库用于存储转储服务器bios镜像的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种转储服务器bios镜像的方法。
109.本领域技术人员可以理解,图6中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
110.在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
111.所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令,所述复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现所述bios存储器通过所述通路选通芯片(switch mux)与所述基板管理控制器bmc相连通;
112.将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下;
113.根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段;
114.在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性;
115.恢复所述bios存储器(bios rom)中bios固件程序的控制权,实现所述基板管理控制器bmc通过所述通路选通芯片(switch mux)与所述集成南桥pch相连通。
116.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
117.所述集成南桥pch中存储管理引擎me;
118.在所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令之前,还包括:选择是否将管理引擎me进入恢复(recovery)模式;当服务器系统未宕机时选择管理引擎me进入恢复(recovery)模式,当服务器系统宕机时选择管理引擎me不进入恢复(recovery)模式;
119.当所述管理引擎me进入恢复(recovery)模式时,在恢复所述bios存储器(bios rom)中bios固件程序的控制权之后,还包括:将所述管理引擎me切换到正常模式,实现所述基板管理控制器bmc与所述集成南桥pch上的所述管理引擎me进行通信。
120.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
121.当服务器系统宕机时,在转储bios镜像之后以及在恢复所述bios存储器(bios rom)中bios固件程序的控制权之前,还包括:
122.将所述bios固件程序从所述基板管理控制器bmc的文件系统中卸载并重装。
123.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
124.所述根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段步骤包括:
125.根据所述bios存储器(bios rom)中的bios闪存(bios flash)大小配置文件读写长度,所述bios闪存内存放bios镜像以及哈希值字段;
126.根据所述bios闪存的实际读写长度,读取并转储所述bios镜像以及所述哈希值字段。
127.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
128.在所述bios固件程序每次启动完成后会将全部镜像按照sha256算法生成对应的哈希值,并保存在所述bios闪存的固定地址;
129.在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性步骤具体包括:按照sha256算法再次计算生成哈希值与所述哈希值字段中的哈希值对比;当哈希值相同时,判定所转储的bios镜像以及哈希值字段内容正确;当哈希值不同时,判定所转储的bios镜像以及哈希值字段内容错误,重新转储bios镜像以及哈希值字段。以此方式校验bios镜像文件的准确性。
130.在一个实施例中,处理器执行计算机程序时还实现以下步骤:
131.所述基板管理控制器bmc、所述集成南桥pch、所述复杂可编程逻辑器件cpld以及所述bios存储器均通过串行外设接口spi链路链接在所述通路选通芯片(switch mux)上;按照spi总线协议读取并转储所述bios闪存中的所述bios镜像以及所述哈希值字段数据;
132.所述集成南桥pch连接至处理器cpu;在恢复所述bios存储器(bios rom)中bios固件程序的控制权后,实现所述基板管理控制器bmc和所述处理器cpu实时交互,所述基板管理控制器bmc获取所述处理器cpu的温度信息,当所述处理器cpu。
133.关于处理器执行计算机程序时实现步骤的具体限定可以参见上文中对于转储服务器bios镜像的的方法的限定,在此不再赘述。
134.在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
135.所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令,所述复杂可编程逻辑器件cpld控制所述通路选通芯片切换选通链路来实现所述bios存储器通过所述通路选通芯片(switch mux)与所述基板管理控制器bmc相连通;
136.将所述bios存储器(bios rom)挂载到所述基板管理控制器bmc的文件系统下;
137.根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段;
138.在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性;
139.恢复所述bios存储器(bios rom)中bios固件程序的控制权,实现所述基板管理控
制器bmc通过所述通路选通芯片(switch mux)与所述集成南桥pch相连通。
140.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
141.所述集成南桥pch中存储管理引擎me;
142.在所述基板管理控制器bmc向所述复杂可编程逻辑器件cpld发送链路选通切换命令之前,还包括:选择是否将管理引擎me进入恢复(recovery)模式;当服务器系统未宕机时选择管理引擎me进入恢复(recovery)模式,当服务器系统宕机时选择管理引擎me不进入恢复(recovery)模式;
143.当所述管理引擎me进入恢复(recovery)模式时,在恢复所述bios存储器(bios rom)中bios固件程序的控制权之后,还包括:将所述管理引擎me切换到正常模式,实现所述基板管理控制器bmc与所述集成南桥pch上的所述管理引擎me进行通信。
144.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
145.当服务器系统宕机时,在转储bios镜像之后以及在恢复所述bios存储器(bios rom)中bios固件程序的控制权之前,还包括:
146.将所述bios固件程序从所述基板管理控制器bmc的文件系统中卸载并重装。
147.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
148.所述根据所述bios存储器(bios rom)的大小读取并转储其中的bios镜像以及所述bios固件程序每次启动时生成的哈希值字段步骤包括:
149.根据所述bios存储器(bios rom)中的bios闪存(bios flash)大小配置文件读写长度,所述bios闪存内存放bios镜像以及哈希值字段;
150.根据所述bios闪存的实际读写长度,读取并转储所述bios镜像以及所述哈希值字段。
151.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
152.在所述bios固件程序每次启动完成后会将全部镜像按照sha256算法生成对应的哈希值,并保存在所述bios闪存的固定地址;
153.在所述bios镜像以及所述哈希值字段转储完成后,利用哈希值字段中的哈希值校验所转储的bios镜像文件的准确性步骤具体包括:按照sha256算法再次计算生成哈希值与所述哈希值字段中的哈希值对比;当哈希值相同时,判定所转储的bios镜像以及哈希值字段内容正确;当哈希值不同时,判定所转储的bios镜像以及哈希值字段内容错误,重新转储bios镜像以及哈希值字段。以此方式校验bios镜像文件的准确性。
154.在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
155.所述基板管理控制器bmc、所述集成南桥pch、所述复杂可编程逻辑器件cpld以及所述bios存储器均通过串行外设接口spi链路链接在所述通路选通芯片(switch mux)上;按照spi总线协议读取并转储所述bios闪存中的所述bios镜像以及所述哈希值字段数据;
156.所述集成南桥pch连接至处理器cpu;在恢复所述bios存储器(bios rom)中bios固件程序的控制权后,实现所述基板管理控制器bmc和所述处理器cpu实时交互,所述基板管理控制器bmc获取所述处理器cpu的温度信息,当所述处理器cpu。
157.关于计算机程序被处理器执行时实现步骤的具体限定可以参见上文中对于转储服务器bios镜像的的方法的限定,在此不再赘述。
158.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以
通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
159.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
160.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献