CN119536832A - 标识信息配置方法、装置及系统 - Google Patents
标识信息配置方法、装置及系统 Download PDFInfo
- Publication number
- CN119536832A CN119536832A CN202510109438.1A CN202510109438A CN119536832A CN 119536832 A CN119536832 A CN 119536832A CN 202510109438 A CN202510109438 A CN 202510109438A CN 119536832 A CN119536832 A CN 119536832A
- Authority
- CN
- China
- Prior art keywords
- identification information
- server
- external device
- storage interval
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/4401—Bootstrapping
- G06F9/4411—Configuring for operating with peripheral devices; Loading of device drivers
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Stored Programmes (AREA)
Abstract
本申请实施例提供了一种标识信息配置方法、装置及系统,其中,该方法包括:在服务器初次启动的过程中,识别服务器上接入的外接设备;在服务器中部署的存储器中为每个外接设备分配目标存储区间,并构建目标存储区间和外接设备之间的绑定关系,其中,管理控制器用于在检测到服务器完成启动的情况下,获取外接设备的第一标识信息,并将第一标识信息写入存储器中与外接设备绑定的目标存储区间;在服务器再次启动的过程中,提取目标存储区间中存储的第一标识信息;使用第一标识信息和第二标识信息为外接设备构建目标标识信息。通过本申请,解决了相关技术中服务器对外接设备的维护效率较低的问题,进而达到了提高服务器对外接设备的维护效率的效果。
Description
技术领域
本申请实施例涉及计算机领域,具体而言,涉及一种标识信息配置方法、装置及系统。
背景技术
为了确保服务器对外接设备的高效维护与管理,服务器的启动控制器需维护一套关于表征外接设备在服务器的操作系统中所接入的逻辑位置的信息,与表征外接设备在服务器中的物理接入位置的信息之间的映射关系,由于表征外接设备在服务器的操作系统中所接入的逻辑位置的信息与表征其在服务器中的物理接入位置的信息之间缺乏直接内在联系,且表征外接设备在服务器中的物理接入位置的信息是服务器外部配置的信息,服务器无法获得该信息,服务器的启动控制器本身无法自动构建二者之间的映射关系。因此,传统的解决方案依赖于固件开发人员手动建立和维护这一映射关系,开发人员需要获取服务器为外接设备分配的表征所接入的逻辑位置的信息,并将该信息与表征物理接入位置的信息之间手动构建映射关系,然后将映射关系手动添加到服务器启动控制器的系统固件中,这一过程不仅繁琐且容易引入人为错误,导致服务器对外接设备的维护效率较低。
发明内容
本申请实施例提供了一种标识信息配置方法、装置及系统,以至少解决相关技术中服务器对外接设备的维护效率较低的问题。
根据本申请的一个实施例,提供了一种标识信息配置方法,所述方法应用于服务器中的启动控制器,包括:
在所述服务器初次启动的过程中,识别所述服务器上接入的外接设备;
在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系,其中,管理控制器用于在检测到服务器完成启动的情况下,获取所述外接设备的第一标识信息,并将所述第一标识信息写入所述存储器中与所述外接设备绑定的所述目标存储区间,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息;
使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,其中,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
可选的,所述提取所述目标存储区间中存储的所述第一标识信息,包括:
从所述存储器所包括的存储区间中筛选出所携带的存储区间标识与所述外接设备的设备信息匹配的目标存储区间,其中,所述存储区间标识用于表征对应的所述存储区间所属的设备;
根据所述目标存储区间对应的配置信息从所述目标存储区间中提取出所述第一标识信息,其中,所述配置信息用于指示所述目标存储区间中各个字节位置的数据存储情况。
可选的,所述根据所述目标存储区间对应的配置信息从所述目标存储区间中提取出所述第一标识信息,包括:
查找所述配置信息中存储的第一偏移字段,其中,所述第一偏移字段用于指示表征所述外接设备在服务器中的物理接入位置的标识信息在所述目标存储区间中的位置情况;
将所述第一偏移字段所指示的字段位置上存储的字段确定为所述第一标识信息。
可选的,在所述查找所述配置信息中存储的第一偏移字段之前,所述方法还包括:
查找所述配置信息中存储的第二偏移字段,其中,所述第二偏移字段用于指示表征所述外接设备在服务器的操作系统中所接入的逻辑位置的标识信息在所述目标存储区间中的位置情况;
提取所述目标存储区间中所述第二偏移字段所指示的字段位置上存储的第三标识信息,其中,所述第三标识信息为所述启动控制器在分配所述目标存储区间后存储的,所述第三标识信息用于指示所述目标存储区间所属的外接设备在服务器的操作系统中所接入的逻辑位置;
将所述第三标识信息和所述启动控制器中存储的所述第二标识信息进行匹配;
在所述第三标识信息和所述第二标识信息匹配一致的情况下,执行查找所述配置信息中存储的第一偏移字段的操作。
可选的,所述在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,包括:
检测所述外接设备所携带的参考存储器,其中,所述参考存储器为用于存储所述外接设备的设备运行信息的存储器,所述存储器包括所述参考存储器;
获取所述参考存储器中各个存储区间的参考关键字,其中,所述参考关键字用于指示所述参考存储器的各个存储区间的数据存储情况;
在多个所述参考关键字中存在第一关键字的情况下,将所述第一关键字对应的存储区间确定为所述目标存储区间,其中,所述第一关键字指示对应的所述存储区间处于未被占用状态。
可选的,所述在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,包括:
检测所述服务器中部署的目标存储器,其中,所述目标存储器为所述服务器中用于存储所述服务器运行信息的存储器,所述存储器包括所述目标存储器;
获取所述目标存储器中各个存储区间的目标关键字,其中,所述目标关键字用于指示所述目标存储器的各个存储区间的数据存储情况;
在多个所述目标关键字中存在第二关键字的情况下,将所述第二关键字对应的存储区间确定为所述目标存储区间,其中,所述第二关键字指示对应的存储区间处于未被占用状态。
可选的,在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系之后,所述方法还包括:
获取所述服务器初次启动的过程中为所述外接设备分配的所述第二标识信息;
将所述第二标识信息写入所述目标存储区间,并将指示所述第二标识信息在所述目标存储区间的写入位置的第二偏移字段写入到所述目标存储区间对应的配置信息中,其中,所述配置信息用于指示所述目标存储区间中各个字节位置的数据存储情况。
可选的,所述使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,包括:
构建每个所述外接设备的所述第一标识信息和所述第二标识信息之间的目标映射关系;
将所述目标映射关系确定为所述外接设备的所述目标标识信息。
可选的,所述构建所述目标存储区间和所述外接设备之间的绑定关系,包括:
获取识别到的所述外接设备的设备信息;
使用所述设备信息对所述目标存储区间进行标记。
根据本申请的一个实施例,还提供了一种标识信息配置方法,所述方法应用于服务器中的管理控制器,包括:
在检测到所述服务器完成启动的情况下,获取服务器系统中接入的外接设备的第一标识信息,其中,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间,其中,所述目标存储区间为启动控制器在服务器初次启动过程中在所述存储器中为所述外接设备分配的,所述启动控制器用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息,使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
可选的,所述将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间,包括:
获取所述外接设备的设备信息;
从所述存储器所包括的存储区间中筛选出所携带的存储区间标识与所述外接设备的设备信息匹配的目标存储区间,其中,所述存储区间标识用于表征对应的所述存储区间所属的设备;
将所述第一标识信息写入所述目标存储区间。
可选的,所述将所述第一标识信息写入所述目标存储区间,包括:
根据所述目标存储区间的配置信息查找所述目标存储区间中未被占用的目标字节位置,所述配置信息用于指示所述目标存储区间中各个字节位置的数据存储情况;
将所述第一标识信息写入所述目标字节位置,并将所述目标字节位置所对应的第一偏移字段写入所述配置信息中,其中,所述第一偏移字段用于指示所述目标字节位置在所述目标存储区中的位置情况。
可选的,在所述将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间之后,所述方法还包括:
提取所述目标存储区间中存储的所述外接设备的所述第二标识信息;
构建所述外接设备的所述第一标识信息和所述第二标识信息之间的目标映射关系;
将所述目标映射关系发送与所述服务器具有绑定关系的显示终端,其中,所述显示终端用于显示所述目标映射关系并根据所述目标映射关系管理所述服务器中接入的设备。
可选的,所述提取所述目标存储区间中存储的所述外接设备的所述第二标识信息,包括:
提取所述目标存储区间的配置信息中存储的第三偏移字段,其中,所述第三偏移字段用于指示表征所述外接设备在服务器的操作系统中所接入的逻辑位置的标识信息在所述目标存储区间中的位置情况;
提取所述目标存储区间中所述第三偏移字段所指示的字段位置上存储的所述第二标识信息。
可选的,在所述将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间之后,所述方法还包括:
接收标识信息更新请求,其中,所述标识信息更新请求用于指示所述外接设备的所述第一标识信息被更新为第四标识信息;
响应所述标识信息更新请求,在所述存储器中查找与所述外接设备绑定的所述目标存储区间;
使用所述第四标识信息对所述目标存储区间中存储的所述第一标识信息进行更新。
根据本申请的一个实施例,还提供了一种标识信息配置系统,包括:
服务器包括启动控制器和管理控制器,所述启动控制器和所述管理控制器分别和所述服务器中的存储器连接;
所述启动控制器,用于在所述服务器初次启动的过程中,识别所述服务器上接入的外接设备;在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系;
所述管理控制器,用于在检测到所述服务器完成启动的情况下,获取所述外接设备的第一标识信息,其中,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;将所述第一标识信息写入所述存储器中与所述外接设备绑定的所述目标存储区间;
所述启动控制器,还用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息;使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,其中,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
根据本申请的另一个实施例,提供了一种标识信息配置装置,所述装置应用于服务器中的启动控制器,包括:
识别模块,用于在所述服务器初次启动的过程中,识别所述服务器上接入的外接设备;
分配模块,用于在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系,其中,管理控制器用于在检测到服务器完成启动的情况下,获取所述外接设备的第一标识信息,并将所述第一标识信息写入所述存储器中与所述外接设备绑定的所述目标存储区间,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
第一提取模块,用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息;
第一构建模块,用于使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,其中,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
根据本申请的另一个实施例,提供了一种标识信息配置装置,所述装置应用于服务器中的管理控制器,包括:
第一获取模块,用于在检测到所述服务器完成启动的情况下,获取服务器系统中接入的外接设备的第一标识信息,其中,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
第一写入模块,用于将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间,其中,所述目标存储区间为启动控制器在服务器初次启动过程中在所述存储器中为所述外接设备分配的,所述启动控制器用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息,使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
根据本申请的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一项方法实施例中的步骤。
通过本申请,在服务器初次启动过程中,服务器中的启动控制器识别服务器上接入的外接设备,为识别到的外接设备分配用于指示外接设备在服务器的操作系统中所接入的逻辑位置的第二标识信息,并在服务器中部署的存储器中为每个外接设备分配目标存储区间,并构建目标存储区间和外接设备之间的绑定关系,进而管理控制器能够在检测到服务器完成启动的情况下,获取外接设备的用于指示其在服务器中的物理接入位置的第一标识信息,并将第一标识信息写入存储器中与外接设备绑定的目标存储区间中,进而在服务器再次启动的过程中,启动控制器能够提取目标存储区间中的第一标识信息,并使用第一标识信息和第二标识信息为外部设备构建目标标识信息,进而操作系统能够使用目标标识信息维护外接设备的运行状态。因此,可以解决相关技术中服务器对外接设备的维护效率较低的问题,达到提高服务器对外接设备的维护效率的效果。
附图说明
图1是本申请实施例的一种标识信息配置方法的服务器设备的硬件结构框图;
图2是根据本申请实施例的一种标识信息配置方法的流程图一;
图3是根据本申请实施例的一种VPD可读写关键字的定义表图;
图4是根据本申请实施例的一种标识信息配置方法的流程图二;
图5是根据本申请实施例的一种VPD关键字格式的示意图;
图6是根据本申请实施例的一种服务器PCIe设备丝印信息带外实时更新的整体结构框图;
图7是根据本申请实施例的一种VPD中Offset字段的定义表图;
图8是根据本申请实施例的一种 BMC web丝印编辑管理界面图;
图9是根据本申请实施例的一种使用MCTP over PCIe协议实现的服务器PCIe设备丝印信息带外实时更新设计流程图;
图10是根据本申请实施例的一种标识信息配置装置的结构框图一;
图11是根据本申请实施例的一种标识信息配置装置的结构框图二。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请的实施例。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在服务器设备或者类似的运算装置中执行。以运行在服务器设备上为例,图1是本申请实施例的一种标识信息配置方法的服务器设备的硬件结构框图。如图1所示,服务器设备可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述服务器设备还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述服务器设备的结构造成限定。例如,服务器设备还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本申请实施例中的标识信息配置方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至服务器设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器设备的通信供应方提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种标识信息配置方法,所述方法应用于服务器中的启动控制器,图2是根据本申请实施例的一种标识信息配置方法的流程图一,如图2所示,该流程包括如下步骤:
步骤S202,在所述服务器初次启动的过程中,识别所述服务器上接入的外接设备;
步骤S204,在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系,其中,管理控制器用于在检测到服务器完成启动的情况下,获取所述外接设备的第一标识信息,并将所述第一标识信息写入所述存储器中与所述外接设备绑定的所述目标存储区间,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
步骤S206,在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息;
步骤S208,使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,其中,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
通过上述步骤,在服务器初次启动过程中,服务器中的启动控制器识别服务器上接入的外接设备,为识别到的外接设备分配用于指示外接设备在服务器的操作系统中所接入的逻辑位置的第二标识信息,并在服务器中部署的存储器中为每个外接设备分配目标存储区间,并构建目标存储区间和外接设备之间的绑定关系,进而管理控制器能够在检测到服务器完成启动的情况下,获取外接设备的用于指示其在服务器中的物理接入位置的第一标识信息,并将第一标识信息写入存储器中与外接设备绑定的目标存储区间中,进而在服务器再次启动的过程中,启动控制器能够提取目标存储区间中的第一标识信息,并使用第一标识信息和第二标识信息为外部设备构建目标标识信息,进而操作系统能够使用目标标识信息维护外接设备的运行状态。因此,可以解决相关技术中服务器对外接设备的维护效率较低的问题,达到提高服务器对外接设备的维护效率的效果。
可选的,在本申请实施例中,启动控制器为服务器中部署的用于控制服务器系统启动运行的器件,启动控制器在服务器初次启动过程中识别服务器上接入的外接设备,并为所有外接设备分配用于指示外接设备在服务器的操作系统中所接入的逻辑位置的第二标识信息,并为各个外接设备创建和外接设备具有绑定关系的目标存储区间,进而在服务器再次启动的过程中,提取存储在目标存储区间中的第一标识信息,并使用第一标识信息和第二标识信息构建目标标识信息,以供操作系统使用。启动控制器可以但不限于是BIOS(Basic Input Output System,基本输入输出系统),或者是部署了具有对服务器启动状态控制功能的控制程序的器件,本方案对此不做限定。
在上述步骤S202提供的实施例中,外接设备可以但不限于是通过物理连接的方式在服务器中接入的设备,外接设备可以但不限于是为了支持服务器的业务功能在服务器中接入的设备,例如网络适配器卡、I/O扩展卡、加速卡、PCIE设备等,本方案对此不做限定。
在上述步骤S204提供的实施例中,存储器可以是服务器中部署的用于存储服务器运行信息的存储器,进而启动控制器可以服务器中存储其他信息的存储器中为外接设备开辟一块目标存储区间,并构建该目标存储区间和外界设备之间的绑定关系,从而可使用该存储区间为来存储外界设备的标识信息(包括第一标识信息和第二标识信息),从而实现启动控制器和管理控制器能够拿到不属于自身已知的标识信息。在本实施例中,可以将同一个存储器划分为多个存储区间,并将多个存储区间分配给多个不同的外接设备使用。
可选地,在本申请实施例中,存储器还可以是外接设备上所携带的存储器,该存储器可以是外接设备上存储设备信息的存储器,进而在服务器启动过程中,启动控制器可以扫描服务器上接入的外接设备,并访问外接设备上携带的存储器,并在存储器中未被占用的存储区间中划分出一个用于存储当前外接设备的标识信息的目标存储区间。
可选地,在本申请实施例中,服务器中部署的存储器为可以被划分为多个存储区间的器件,存储器可以但不限于是EEPROM(Electrically Erasable Programmable Read-Only Memory,电可擦可编程只读存储器)、NVRAM(Non-Volatile Random Access Memory,非易失性随机存取存储器)等,本方案对此不做限定。
可选的,在本申请实施例中,启动控制器在服务器部署的存储器中会为每个外接设备分配目标存储区间,目标存储区间用于存储外接设备的第一标识信息,或者第一标识信息和第二标识信息,目标存储区间可以是从存储器的缓存空间中划分出的一块子缓存空间,还可以是一种存储在存储器中的数据格式,例如,目标存储区间可以是VPD(VendorProduct Data,重要产品数据),VPD记录了FRU(Feild Replaceable Unit,现场可替换单元)设备的部件号、序列号等信息,可以唯一标志系统的软件、硬件,也可以存放系统微指令。VPD提供了一种存储设备性能或故障等信息的机制,软件可以将PCIe设备的性能参数或故障信息回填到VPD中,方便设备使用或调试。
可选的,在本申请实施例中,启动控制器会构建目标存储区间和外接设备之间的绑定关系,启动空间构建目标存储区间与外接设备的绑定关系的方式可以但不限于通过使用外接设备所具有的设备信息(为用于)对目标存储区间进行标记的方式,标记目标存储区间的方式可以是在存储器中构建设备信息和目标存储区间的映射关系,或者还可以是将设备信息存储在目标存储区间中。当构建了目标存储区间和外接设备之间的绑定关系后启动控制器在后续访问目标存储器后可以通过该绑定关系确定该目标存储区间所属的外接设备,从而读取出目标存储空间中存储的第一标识信息;同理管理控制器在管理服务器中的设备时还可以访问存储器从而根据绑定关系确定出该目标存储区间所属的外接设备,进而将该外接设备的第一标识信息存储至目标存储区间中,从而保证了标识信息和外接设备之间的匹配关系,避免标识信息的错误配置。
可选的,在本申请实施例中,管理控制器为服务器中部署的管理接入设备的运行状态的器件,管理控制器用于在检测到服务器启动完成的情况下获取外接设备的第一标识信息,并将第一标识信息写入与外接设备绑定的目标存储区间中,管理控制器可以但不限于是BMC(Baseboard Management Controller,基板管理控制器)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)等,本方案对此不做限定。
可选的,在本申请实施例中,第一标识信息用于指示所述外接设备在服务器中的物理接入位置,例如第一标识信息可以但不限于是印刷在设备上的标识信息(即设备的丝印信息或者丝印号)。
在上述步骤S206提供的实施例中,启动控制器在服务器再次启动的过程中,从目标存储区间中提取出管理控制器写入的第一标识信息。
在上述步骤S208提供的实施例中,第二标识信息用于指示外接设备在服务器的操作系统中所接入的逻辑位置,第二标识信息可以但不限于是分配给可插拔设备或模块在系统主板上的特定物理位置的标识符(即槽位号),比如当前每个外接设备的(slot number)槽位号是由启动控制器分配的,一般而言是从CPU0PE1~PE4、CPU1PE1~PE4、CPU2PE1~PE4、CPU3PE1~PE4按顺序进行排列的,若CPU0PE1有两个X8的设备,这两个设备的槽位号是0、1,若CPU0PE2有一个X16的设备,它的槽位号就是2,往后以此类推,每个外接设备的物理位置(即第一标识信息)和设备使用的CPUPE端口(即第二标识信息)对应关系是不固定的。
可选的,在本申请实施例中,第二标识信息为服务器初次启动过程中,启动控制器为识别到的外接设备分配的,第二标识信息可以存储在启动控制器为各个外接设备创建的目标存储区间中,也可以存储在服务器中的其他任意用于存储数据的存储空间中,进而启动控制器在从目标存储区间获取到管理控制器写入的第一标识信息后,可以使用第一标识信息和其在服务器初次启动过程中预先存储的第二标识信息构建目标标识信息,目标标识信息用于指示第一标识信息和第二标识信息之间的映射关系,进而服务器操作系统能够使用该目标标识信息维护各个外接设备的运行状态。
作为一种可选的实施例,所述提取所述目标存储区间中存储的所述第一标识信息,包括:
从所述存储器所包括的存储区间中筛选出所携带的存储区间标识与所述外接设备的设备信息匹配的目标存储区间,其中,所述存储区间标识用于表征对应的所述存储区间所属的设备;
根据所述目标存储区间对应的配置信息从所述目标存储区间中提取出所述第一标识信息,其中,所述配置信息用于指示所述目标存储区间中各个字节位置的数据存储情况。
可选的,在本申请实施例中,对于每个外接设备,启动控制器将使用外接设备对应的设备信息(如序列号、型号等)作为关键字,与存储器中所包括的存储区间携带的存储区间标识进行匹配,进而从多个存储区间中筛选出存储区间标识所指示的设备信息与外接设备的设备信息相一致的目标存储区间。
可选的,在本申请实施例中,启动控制器在查找到外接设备对应的目标存储区间后,会读取目标存储区间的配置信息,配置信息用于指示目标存储区间中各个字节位置的数据存储情况,例如数据字节的起始位置、长度、类型(如文本、数字或混合格式)以及编码方式(如ASCII、UTF-8)等,进而启动控制器会解码目标存储区间内的数据,确定用于存储第一标识信息的字节位置,并从相应的字节位置中提取出第一标识信息。
通过上述方式,启动控制器可以准确地查找和获取到外接设备的第一标识信息,实现第一标识信息的精确匹配,从而提高了服务器的管理效率和维护便利性。
作为一种可选的实施例,所述根据所述目标存储区间对应的配置信息从所述目标存储区间中提取出所述第一标识信息,包括:
查找所述配置信息中存储的第一偏移字段,其中,所述第一偏移字段用于指示表征所述外接设备在服务器中的物理接入位置的标识信息在所述目标存储区间中的位置情况;
将所述第一偏移字段所指示的字段位置上存储的字段确定为所述第一标识信息。
可选的,在本申请实施例中,目标存储区间的配置信息是在启动控制器和管理控制器向目标存储区间写入数据后配置的,即启动控制器在服务器初始启动阶段将为各个外接设备分配的第二标识信息写入目标存储区间后,会根据第二标识信息在目标存储区间中所处的位置情况编辑第二标识信息对应的偏移字段,管理控制器在将各个外接设备的第一标识信息写入目标存储区间后,会根据第一标识信息在目标存储区间中所处的位置情况编辑第一标识信息对应的偏移字段。例如:BMC将丝印信息存储在VPD中偏移位置158开始的字段中,并在配置信息中设置第一偏移字段为158,则BIOS后续从VPD中提取丝印信息时,将第158字段位置上存储的数据确定为丝印信息。
通过上述内容,可以通过查找配置信息中的第一偏移字段在目标存储区间中精确地读取外接设备的第一标识信息,提高了服务器硬件管理的自动化水平和可靠性。
作为一种可选的实施例,在所述查找所述配置信息中存储的第一偏移字段之前,所述方法还包括:
查找所述配置信息中存储的第二偏移字段,其中,所述第二偏移字段用于指示表征所述外接设备在服务器的操作系统中所接入的逻辑位置的标识信息在所述目标存储区间中的位置情况;
提取所述目标存储区间中所述第二偏移字段所指示的字段位置上存储的第三标识信息,其中,所述第三标识信息为所述启动控制器在分配所述目标存储区间后存储的,所述第三标识信息用于指示所述目标存储区间所属的外接设备在服务器的操作系统中所接入的逻辑位置;
将所述第三标识信息和所述启动控制器中存储的所述第二标识信息进行匹配;
在所述第三标识信息和所述第二标识信息匹配一致的情况下,执行查找所述配置信息中存储的第一偏移字段的操作。
可选的,在本申请实施例中,在服务器启动过程中,BIOS(启动控制器)首先枚举所有通过PCIe总线接入的外接设备,并为每个设备分配一个槽位号(第二标识信息), 一方面BIOS会记录下这个槽位号,并存储在BIOS的配置数据中;另一方面,BIOS会在分配目标存储区间后,将槽位号存储在目标存储区间中。当BIOS需要读取设备的丝印信息(第一标识信息)时,它会首先查找目标存储区间配置信息中的第二偏移字段,第二偏移字段指示了第三标识信息在目标存储区间中的位置,进而BIOS根据第二偏移字段指示的字段位置,从目标存储区间中提取第三标识信息与自身存储的第二标识信息进行对比匹配,如果第三标识信息与第二标识信息匹配一致,这表明目标存储区间中的数据确实属于BIOS所识别的外接设备,进而再执行查找配置信息中存储的第一偏移字段的操作。
通过上述内容,启动控制器在为外接设备分配了目标存储区间后,可以将为该外接设备分配的第二标识信息存储值该目标存储区间中(即第三标识信息),并且启动控制器还会存储为外接设备分配原始第二标识信息,进而启动控制器在从目标存储区间中读取第一标识信息之前,通过验证设备的第二标识信息和第三标识信息的一致性,确保了目标存储区间中存储的标识信息属于相同设备,避免了数据读取错误或设备信息混淆的问题。
作为一种可选的实施例,所述在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,包括:
检测所述外接设备所携带的参考存储器,其中,所述参考存储器为用于存储所述外接设备的设备运行信息的存储器,所述存储器包括所述参考存储器;
获取所述参考存储器中各个存储区间的参考关键字,其中,所述参考关键字用于指示所述参考存储器的各个存储区间的数据存储情况;
在多个所述参考关键字中存在第一关键字的情况下,将所述第一关键字对应的存储区间确定为所述目标存储区间,其中,所述第一关键字指示对应的所述存储区间处于未被占用状态。
可选的,在本申请实施例中,用于存储标识信息的存储器可以是外接设备自身携带的存储器,即服务器可以利用外接设备自身的存储空间来存储外接设备的第一标识信息和第二标识信息,这种机制不仅减轻了服务器主存储器的负担,还确保了设备标识信息的可移植性和设备更换时标识信息的自动更新,因为存储这些标识信息的存储器就位于外接设备本身,无论设备被插入哪个服务器或哪个槽位,其标识信息可以随外接设备一起迁移,无需服务器重新配置或更新硬件信息。
可选的,在本申请实施例中,启动控制器在服务器启动时,会确保为每个外接设备分配的目标存储区间是合适的且未被占用的,参考关键字是一种特殊的标识符,用于描述其所在存储区间的类型和数据存储情况,例如是否已被占用、存储类型、可用空间等,通过读取这些关键字,服务器能够了解参考存储器中哪些存储区间是空闲的,可以用于存储新的信息。第一关键字用于指示对应的存储区间处于未被占用状态,图3是根据本申请实施例的一种VPD可读写关键字的定义表图,如图3所示,关键字“RW”表示该区间为可读写存储空间,可以用于存储设备的数据信息。
通过上述内容,通过检测外接设备自带的参考存储器,并利用其中的空闲存储区间存储外接设备的标识信息,进而当设备在不同服务器或槽位之间移动时,其标识信息可以随设备一起迁移,无需服务器重新配置或更新硬件信息,减少了维护成本和操作复杂度。
作为一种可选的实施例,所述在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,包括:
检测所述服务器中部署的目标存储器,其中,所述目标存储器为所述服务器中用于存储所述服务器运行信息的存储器,所述存储器包括所述目标存储器;
获取所述目标存储器中各个存储区间的目标关键字,其中,所述目标关键字用于指示所述目标存储器的各个存储区间的数据存储情况;
在多个所述目标关键字中存在第二关键字的情况下,将所述第二关键字对应的存储区间确定为所述目标存储区间,其中,所述第二关键字指示对应的存储区间处于未被占用状态。
可选的,在本申请实施例中,用于存储标识信息的存储器还可以是服务器内部的任何非易失性存储介质,如EEPROM、NVRAM或闪存等,这些存储器通常用于存储服务器的运行信息,如固件版本、系统配置和设备状态等。
可选的,在本申请实施例中,目标关键字用于指示存储区间的数据存储情况,例如是否已被占用、存储类型、可用空间等。通过读取目标关键字,启动控制器能够了解服务器中部署的存储器中哪些存储区间是空闲的,哪些是被占用的。在多个目标关键字中,如果存在指示存储区间处于未被占用状态的第二关键字,启动控制器可以将与该第二关键字对应的存储区间确定为目标存储区间,用于存储外接设备的标识信息。
可选的,在本申请实施例中,允许从服务器中任意存储区间中划分出目标存储区间,目标存储区间的选择可以是连续的,也可以是不连续的,只要检测到服务器的存储器中有足够的空闲存储区间,就可以灵活地从中划分出一段或多段存储区间用于存储外接设备的标识信息。
通过上述方式,通过检测服务器中用于存储服务器运行信息的目标存储器,并从中划分出任意空闲存储区间作为目标存储区间,避免了存储资源的浪费,显著提高了服务器存储资源的利用率。
作为一种可选的实施例,在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系之后,所述方法还包括:
获取所述服务器初次启动的过程中为所述外接设备分配的所述第二标识信息;
将所述第二标识信息写入所述目标存储区间,并将指示所述第二标识信息在所述目标存储区间的写入位置的第二偏移字段写入到所述目标存储区间对应的配置信息中,其中,所述配置信息用于指示所述目标存储区间的数据存储情况。
可选的,在本申请实施例中,在服务器初次启动过程中,启动控制器在为每个外接设备分配目标存储区间后,会将为外接设备分配的第二标识信息写入到目标存储区间中,并将用于指示第二标识信息在目标存储区间的写入位置的第二偏移字段写入到目标存储区间中的配置信息中,方便后续准确地读取出第二标识信息。例如:BIOS(启动控制器)将槽位号(第二标识信息)存储在VPD(目标存储区间)中偏移位置169开始的字段中,那么BIOS会在VPD的配置信息中设置第二偏移字段为169。
通过上述内容,启动控制器在服务器初次启动时不仅分配目标存储区间,还写入设备的第二标识信息,并记录写入位置。这种机制简化了设备信息的管理和定位,提高了服务器硬件信息管理的自动化程度和效率。
作为一种可选的实施例,所述使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,包括:
构建每个所述外接设备的所述第一标识信息和所述第二标识信息之间的目标映射关系;
将所述目标映射关系确定为所述外接设备的所述目标标识信息。
可选的,在本申请实施例中,会将第一标识信息和第二标识信息之间的映射关系确定为外接设备的目标标识信息,目标映射关系的构建确保了外接设备的物理位置与逻辑位置之间的对应,便于服务器后续对外接设备的管理和监控。
作为一种可选的实施例,所述构建所述目标存储区间和所述外接设备之间的绑定关系,包括:
获取识别到的所述外接设备的设备信息;
使用所述设备信息对所述目标存储区间进行标记。
可选的,在本申请实施例中, 外接设备的设备信息用于表征外接设备的设备身份和属性,设备信息可以但不限于包括设备类型、设备序列号、设备型号等,进而可以使用外接设备对应的设备信息对目标存储区间进行标记来构建目标存储区间和外接设备之间的绑定关系。
通过上述方式,通过使用设备信息标记目标存储区间来构建目标存储区间和外接设备之间的绑定关系,减少了每个机型和配置都需要重新开发固件的复杂度,使得服务器硬件信息管理更加标准化和自动化。
在本实施例中提供了一种标识信息配置方法,所述方法应用于服务器中的管理控制器,图4是根据本申请实施例的一种标识信息配置方法的流程图二,如图4所示,该流程包括如下步骤:
步骤S402,在检测到所述服务器完成启动的情况下,获取服务器系统中接入的外接设备的第一标识信息,其中,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
步骤S404,将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间,其中,所述目标存储区间为启动控制器在服务器初次启动过程中在所述存储器中为所述外接设备分配的,所述启动控制器用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息,使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
可选的,在本申请实施例中,BMC(管理控制器)在检测到服务器完成启动的情况下,会获取服务器系统中接入的外接设备的丝印信息(第一标识信息),并将丝印信息写入存储器与外接设备绑定的VPD(目标存储区间)中,进而在服务器再次启动的过程中,BIOS(启动控制器)能够从VPD中提取出BMC写入的丝印信息,并使用丝印信息和BISO在服务器初次启动时预先分配并存储的槽位号(第二标识信息)构建目标标识信息,目标标识信息即每个外接设备的丝印信息与槽位号之间的映射关系,进而操作系统能够使用该映射关系维护外接设备的运行状态。
作为一种可选的实施例,所述将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间,包括:
获取所述外接设备的设备信息;
从所述存储器所包括的存储区间中筛选出所携带的存储区间标识与所述外接设备的设备信息匹配的目标存储区间,其中,所述存储区间标识用于表征对应的所述存储区间所属的设备;
将所述第一标识信息写入所述目标存储区间。
可选的,在本申请实施例中,对于每个外接设备,管理控制器将使用外接设备对应的设备信息(如序列号、型号等)作为关键字,与存储器中所包括的存储区间携带的存储区间标识进行匹配,进而从多个存储区间中筛选出存储区间标识所指示的设备信息与外接设备的设备信息相一致的目标存储区间,在查找到外接设备对应的目标存储区间后,管理控制器将第一标识信息写入该目标存储区间中。
通过上述方式,管理控制器能够将每个外接设备对应的第一标识信息写入外接设备对应的目标存储区间中,避免了外接设备与第一标识信息所指示的设备不匹配的问题。
作为一种可选的实施例,所述将所述第一标识信息写入所述目标存储区间,包括:
根据所述目标存储区间的配置信息查找所述目标存储区间中未被占用的目标字节位置;
将所述第一标识信息写入所述目标字节位置,并将所述目标字节位置所对应的第一偏移字段写入所述配置信息中,其中,所述第一偏移字段用于指示所述目标字节位置在所述目标存储区中的位置情况。
可选的,在本申请实施例中,管理控制器在检测到服务器启动完成后,会确保每个外接设备的目标存储区间是存在未被占用的字节位置用以写入第一标识信息的,进而将第一标识信息写入到未被占用的字节位置中,并将未被占用的字节位置信息写入到配置信息中。例如:BMC在VPD中查找可读写关键字“RW”,可读写关键字表示该区间为可读写存储空间,可以用于存储设备的数据信息,假设“RW”指示的字段为偏移位置155开始的字段,则BMC将丝印信息(第一标识信息)存储在VPD中偏移位置155开始的字段中,并在配置信息中设置第一偏移字段为158。
通过上述方式,将第一标识信息写入目标存储区间未被占用的字节中,并将该字节信息写入目标存储区间的配置信息中,不仅能够避免目标存储区间中存储空间的冲突,还便于启动控制器后续从目标存储区间中准确提取出第一标识信息,提高了服务器中标识信息的配置效率。
作为一种可选的实施例,在所述将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间之后,所述方法还包括:
提取所述目标存储区间中存储的所述外接设备的所述第二标识信息;
构建所述外接设备的所述第一标识信息和所述第二标识信息之间的目标映射关系;
将所述目标映射关系发送与所述服务器具有绑定关系的显示终端,其中,所述显示终端用于显示所述目标映射关系并根据所述目标映射关系管理所述服务器中接入的设备。
可选的,在本申请实施例中,在BMC(管理控制器)将丝印信息(第一标识信息)写入到外接设备的VPD(目标存储区间)中以后,BMC可以从VPD中提取出BIOS(启动控制器)为外接设备分配的槽位号(第二标识信息),并构建丝印信息与槽位号之间的映射关系,发送给与服务器具有绑定关系的显示终端上。例如:BMC使用MCTP over PCIe向每个PCIe设备VPD中读取设备槽位号,构造每个槽位号与丝印信息的目标映射关系,目标映射关系通过管理接口(如IPMI或Redfish)被发送到与服务器具有绑定关系的显示终端,如远程管理界面或服务器管理软件界面, 显示终端接收到目标映射关系后,可以将其展示给用户或管理员,使他们能够直观地了解服务器中每个外接设备的具体位置和状态,显示终端还能够根据接收到的目标映射关系执行设备管理操作,如设备监控、配置修改和故障排查,而无需直接访问服务器的硬件或操作系统。
通过上述方式,通过构建和发送目标映射关系至显示终端使得设备管理更加可视化,便于维护人员执行设备监控和管理任务,提高远程运维效率。
可选地,在本申请实施例中,为管理控制器配置了显示终端,在显示终端上用于显示与管理控制器具有绑定关系的显示界面(比如web界面)在该显示界面上显示了外接设备的第一标识信息和第二标识信息的映射关系,进而服务器管理员还可以通过显示终端中的显示界面为外接设备配置第一标识信息,并在重新配置了第一标识信息后管理控制器可以响应该配置结果将更新后的第一标识信息向该外接设备对应的目标存储区间中同步更新。为了保证向服务器中配置的第一标识信息的准确性,服务器中还可以配置有图像识别设备,该图像识别设备用于识别服务器中的硬件连接图像以及硬件上标注的参考标识信息(指示设备在服务器中物理接入位置的丝印信息)以及服务器中的硬件布局信息,进而管理控制器可以使用硬件布局逻辑对指示外接设备的逻辑位置的候选标识信息(即槽位号)进行预测,进而将该外接设备的候选标识信息和第二标识信息进行匹配,以及将参考标识信息和第一标识信息进行匹配,当候选标识信息和第二标识信息匹配一致,且参考标识信息和第一标识信息匹配一致的情况下,则可以确定当前管理员通过管理界面向服务器中配置的第一标识信息是准确的,开始执行对目标存储区中的第一标识信息的更新操作。
作为一种可选的实施例,所述提取所述目标存储区间中存储的所述外接设备的所述第二标识信息,包括:
提取所述目标存储区间的配置信息中存储的第三偏移字段,其中,所述第三偏移字段用于指示表征所述外接设备在服务器的操作系统中所接入的逻辑位置的标识信息在所述目标存储区间中的位置情况;
提取所述目标存储区间中所述第三偏移字段所指示的字段位置上存储的所述第二标识信息。
可选的,在本申请实施例中,第三偏移字段用于指示第二标识信息在目标存储区间中的位置,管理控制器可以通过查询目标存储区间的配置信息中存储的第三偏移字段,进而根据第三偏移字段所指示的字段位置从目标存储区间中提取出第二标识信息。例如:BMC从VPD的配置信息中查询到外接设备A的槽位号存储在VPD中偏移位置169开始的字段中,进而BMC从VPD中偏移位置169的字段中提取出外接设备A的槽位号信息。
作为一种可选的实施例,在所述将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间之后,所述方法还包括:
接收标识信息更新请求,其中,所述标识信息更新请求用于指示所述外接设备的所述第一标识信息被更新为第四标识信息;
响应所述标识信息更新请求,在所述存储器中查找与所述外接设备绑定的所述目标存储区间;
使用所述第四标识信息对所述目标存储区间中存储的所述第一标识信息进行更新。
可选的,在本申请实施例中,当服务器维护人员更改了硬件设备的物理位置,或者设备本身进行了更新或更换,服务器的管理控制器(如BMC)通过其web管理界面、RESTful接口或任何其他管理接口接收来自用户的标识信息更新请求,更新请求中包含外接设备的设备信息和新的丝印信息(即第四标识信息),接收到更新请求后,BMC通过外接设备的设备信息在服务器的存储器中查找与请求中指定的外接设备绑定的VPD,BMC将接收到的第四标识信息(新的丝印信息)写入查找到的VPD中,覆盖原有的第一标识信息,更新完成后,外接设备的在服务器中的逻辑位置与外接设备的物理位置实现了同步,确保了服务器硬件信息的准确性和一致性。
可选地,在本申请实施例中,启动控制器可以使用具有对外接设备或者存储器进行访问的访问协议从存储器中获取第一标识信息或者向存储器中写入第一标识信息,该访问协议可以但不限于包括MCTP over PCIe协议。
通过上述方式,不同的机型不同的配置 无需再开发BIOS BMC固件,只使用BMC丝印管理web界面或丝印restful接口就可实现服务器机箱丝印向BMC BIOS固件中的更新,提高PCIe、硬盘槽位丝印自动匹配的准确性,提高匹配效率。
根据本申请的一个实施例,还提供了一种标识信息配置系统,包括:
服务器包括启动控制器和管理控制器,所述启动控制器和所述管理控制器分别和所述服务器中的存储器连接;
所述启动控制器,用于在所述服务器初次启动的过程中,识别所述服务器上接入的外接设备;在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系;
所述管理控制器,用于在检测到所述服务器完成启动的情况下,获取所述外接设备的第一标识信息,其中,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;将所述第一标识信息写入所述存储器中与所述外接设备绑定的所述目标存储区间;
所述启动控制器,还用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息;使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,其中,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
可选的,在本申请实施例中,标识信息配置系统包括启动控制器和管理控制器,启动控制器和管理控制器分别和服务器中的存储器连接,以下结合具体实例对该系统具体实现过程进行展开说明:
S1:BIOS在服务器初次启动的过程中,枚举并识别所有接入服务器的外接设备(如PCIe设备),为每个识别到的外接设备分配一个槽位号(第二标识信息),并在服务器存储器(如EEPROM或NVRAM)中开辟VPD区间自定义存储区域(目标存储区间),用于存储设备的槽位号。
S2:BIOS构建VPD与外接设备之间的绑定关系,确保每个外接设备都有其唯一对应的存储区间用于存储标识信息。
S3:当服务器完成启动,BMC通过南桥(PCH)或直接通过PCIe总线,监测到服务器启动过程完成,BMC枚举服务器上的所有外接设备,获取每个设备的丝印信息(第一标识信息),BMC使用MCTP over PCIe协议,将获取到的丝印信息写入与外接设备绑定的VPD中。
S4:当服务器再次启动时,BIOS通过查询存储器中VPD中的配置信息,提取每个外接设备对应的VPD中存储的丝印信息。
S5:BIOS结合丝印信息和槽位号,为每个外接设备构建目标标识信息,其中槽位号是BIOS在步骤S1中在服务器初次启动期间为每个设备分配的,用于指示设备在操作系统中的逻辑位置,构建的目标标识信息用于指示外接设备的物理位置和其在服务器系统中的逻辑位置的映射关系。
S6:当外接设备的第一标识信息(丝印信息)发生了变动,BMC通过web管理界面或RESTful接口接收外界(如服务器维护人员或自动化管理软件)发送的标识信息更新请求,请求中包含外接设备的设备信息和第四标识信息(更新后的丝印信息)。
S7:BMC解析更新请求,定位到请求中指定的外接设备,并查找该设备的目标存储区间(VPD)。
S8:BMC使用MCTP over PCIe协议,将第四标识信息(更新后的丝印信息)写入目标存储区间中,覆盖原有的第一标识信息,实现实时更新。
S9:在服务器后续的启动过程中,BIOS读取存储器中的VPD配置信息,提取每个外接设备VPD中存储的更新后的丝印信息, BIOS结合更新后的丝印信息和槽位号,为每个设备构建新的目标标识信息,提供给操作系统使用,实现设备信息的实时更新和一致管理。
通过上述方式,将槽位与丝印对照绑定的关系落实到在设备VPD中存放,做到了统一规范的设备丝印信息管理,避免传动的机箱丝印适配方法需要每个机型每个配置都要重新开发固件版本的弊端,丝印的固件适配工作比较高效,降低开发成本,更加人性化设计。
为了更好的理解上述的过程,以下再结合可选实施例对上述流程进行说明,本实施例外接设备为PCIe设备为例,启动控制器以服务器中的BIOS为例,管理控制器以服务器中的BMC为例:在本实施例中提供了一种使用MCTP over PCIe协议实现的服务器PCIe设备丝印信息带外实时更新方法,该方法包括:开辟VPD区间自定义存储区域(目标存储区间),用于存放槽位号(第二标识信息)与丝印字符串(第一标识信息)。构造通用的BIOS使用pci.write() PCIe设备配置空间读写函数写入设备的Capability:VPD槽位信息函数,BIOS开机后给每个PCIe设备分配好固定的槽位号(Slot1~n)后写入VPD。构造BMC web丝印编辑管理界面,方便用户灵活改动每个设备槽位号对应的丝印信息。建立BMC使用MCTPover PCIe向每个PCIe设备VPD中读取设备槽位号,并写入每个设备的槽位号对应的丝印信息的程序。构造通用的BIOS读取VPD丝印信息函数,在BIOS setup中可以显示每个设备对应的槽位丝印。构建BMC设备监测程序,在同一槽位设备更换后,设备serial number发生变化,将本槽位的丝印信息重新写入到新设备的VPD空间。构造丝印更新的BMC带外restful接口,方便服务器在产线生产时自动化的更新丝印使用 及数据中心设备批量丝印更新使用。以解决人工操作容易误读读错,并且效率低下,传统的机箱丝印适配方法需要每个机型每个配置都要开发设计对应的固件版本,丝印的固件适配工作比较繁琐低效的问题。
具体实现过程如下:
1)设置VPD关键字格式。VPD包含了多组关键字信息,图5是根据本申请实施例的一种VPD关键字格式的示意图,如图5所示,一组关键字信息格式为:关键字信息 = 2Byte关键字名称 + 1Byte关键字长度 + nByte关键字数据。
建立VPD与PCIe设置之间联系,并存放槽位号与丝印字符串。图6是根据本申请实施例的一种服务器PCIe设备丝印信息带外实时更新的整体结构框图,整体结构框架如图6所示,VPD与PCIe设备建立联系后,CPU读取VPD的数据信息传输,数据信息通过南桥芯片PCH输送给BMC,CPU通过南桥芯片PCH连接BIOS进行系统控制。
2)开辟VPD区间自定义存储区。采用VPD可读写关键字“RW”,可读写关键字记录了设备的性能参数、错误码或其他设备关键信息,是软件可读写的。目前定义的几类可读写VPD关键字如图3所示。
图7是根据本申请实施例的一种VPD中Offset字段的定义表图,如图7所示,具体使用offset 158-219 区间中的一些区域,例如“Slot1:PCIe1”占用11个字节,用于存放槽位号与丝印字符串。
3)构造通用的BIOS使用pci.write() PCI设备配置空间读写函数写入设备的Capability:VPD 槽位信息函数,BIOS开机后给每个PCIe设备分配好固定的槽位号(Slot1~n)后写入VPD。
如:PCI配置空间:pci_write_config_byte/word/dword(struct pci _dev *pdev, int offset, int *value);
VPD CapabilitylD 是固定的值:0x03,定义如下:
//;
// PCI Capability List IDs and records;
//;
#define EFI_PCI_CAPABILITY_ID_PMI 0x01;
#define EFI_PCI_CAPABILITY_ID_AGP 0x02 ;
**#define EFI_PCI_CAPABILITY_ID_VPDB 0x03**;
#define EFI_PCI_CAPABILITY_ID_SLOTID 0x04;
#define EFI_PCI_CAPABILITY_ID_MSI 0x05;
#define EFI_PCI_CAPABILITY_ID_HOTPLUG 0x06;
#define EFI_PCI_CAPABILITY_ID_PCIX 0x07;
4)构造BMC web丝印编辑管理界面。图8是根据本申请实施例的一种 BMC web丝印编辑管理界面图,如图8所示,方便用户灵活改动每个设备槽位号对应的丝印信息。
5)建立BMC使用MCTP over PCIe向每个PCIe设备VPD中读取设备槽位号,并写入每个设备的槽位号对应的丝印信息的程序。
示例代码:展示了如何在Linux环境中使用MCTP over PCIe进行通信:
#include <stdio.h>;
#include <stdlib.h>;
#include <string.h>;
#include <unistd.h>;
#include <fcntl.h>;
#include <sys/ioctl.h>;
#include <linux/pci.h>;
// MCTP消息结构;
typedef struct {;
uint8_t header;
uint8_t data[255];
uint8_t checksum;
} mctp_message_t;
// 发送MCTP消息;
int send_mctp_message(int fd, mctp_message_t *message) {;
// 封装MCTP消息到PCIe事务;
// 这里假设已经有一个函数pci_send_message(fd, message)来发送PCIe事务;
return pci_send_message(fd, message);
};
// 接收MCTP消息;
int receive_mctp_message(int fd, mctp_message_t *message) {;
// 从PCIe事务中提取MCTP消息;
// 这里假设已经有一个函数pci_receive_message(fd, message)来接收PCIe事务;
return pci_receive_message(fd, message);
};
int main() {;
int fd;
mctp_message_t message;
// 打开PCIe设备文件;
fd = open("/dev/pcie_device", O_RDWR);
if (fd < 0) {;
perror("Failed to open PCIe device");
return -1;
};
// 构建MCTP消息;
message.header = 0x01; // 示例消息头;
strcpy((char *)message.data, "Hello, MCTP!");
message.checksum = calculate_checksum(&message); // 计算校验和;
// 发送MCTP消息;
if (send_mctp_message(fd, &message) < 0) {;
perror("Failed to send MCTP message");
close(fd);
return -1;
};
// 接收MCTP消息;
if (receive_mctp_message(fd, &message) < 0) {;
perror("Failed to receive MCTP message");
close(fd);
return -1;
};
// 打印接收到的消息;
printf("Received MCTP message: %s\n", message.data);
// 关闭PCIe设备文件;
close(fd);
return 0;
};
6)构造通用的BIOS读取VPD丝印信息函数,在服务器第二次启动过程中使用构造号的函数,写入到 smbios type9字段,在BIOS setup中可显示每个设备对应的槽位丝印。
//;
// Get Pointer To capability List;
//;
CapabilityPtr =PciRead8(PCI_CAPBILITY_POINTER_OFFSET);
//;
// Find capability ID axA, which Is For Debug Port;
//;
while(capabilityPtr!=0){;
CapabilityId=PciRead8(capabilityPtr);
if(CapabilityId == PCI CAPABILITY ID DEBUG PORT){;
Break;
};
CapabilityPtr=PciRead8(capabilityPtr+1);
};
在操作系统下使用dmidecode命令查看服务器更新后的丝印数据sudo dmidecode-t type9;
sh输出示例:# dmidecode 3.2;
Getting SMBIOS data from sysfs;
SMBIOS 2.8 present;
Handle 0x0016, DMI type 9, 13 bytes;
System Slot Information;
Designation: PCI Slot 2(丝印号) ;
Type: 32-bit PCI;
Current Usage: Available;
Length: Long;
ID: 3(槽位号);
Characteristics:
3.3 V is provided;
PME signal is supported;
7)构建BMC设备监测程序,在同一槽位设备更换后,设备serial number 发生变化将本槽位的丝印信息重新写入到新设备的VPD空间。
8)构造丝印更新的BMC带外restful接口,方便服务器在产线生产时自动化的更新丝印使用 及数据中心设备批量丝印更新使用。
图9是根据本申请实施例的一种使用MCTP over PCIe协议实现的服务器PCIe设备丝印信息带外实时更新设计流程图,如图9所示,服务器上电开机以后,BIOS启动过程枚举所有PCIe设备,为每个设备分配槽位号;BIOS为每个PCIe设备的VPD读写空间写入槽位号:Slot n;用户在BMC web管理界面输入每个槽位号对应的丝印字符串;BMC使用MCTP overPCIe读取每个PCIe设备的VPD槽位号,然后写入该设备对应的丝印字符串;服务器第二次开机过程中,BIOS读取每个PCIe设备VPD中的丝印信息,并显示在BIOS Setup中。
本方案一方面,将槽位与丝印对照绑定的关系 落实到在设备VPD中存放,做到了统一规范的 设备丝印信息管理,避免传动的机箱丝印适配方法需要每个机型每个配置都要重新开发固件版本的弊端,丝印的固件适配工作比较高效,降低开发成本,更加人性化设计。另一方面,不同的机型不同的配置 无需再开发BIOS BMC固件,只使用BMC丝印管理web界面或丝印restful接口就可实现服务器机箱丝印向BMC BIOS固件中的更新,提高PCIe、硬盘槽位丝印自动匹配的准确性,提高匹配效率。
本方案的关键点在于硬件系统的改进和软件配置的更新:硬件结构的改进,使用BMC丝印管理web界面或丝印restful接口就可实现服务器机箱丝印向BMC BIOS固件中的更新。软件的改进,开辟VPD区间自定义存储区域,用于存放槽位号与丝印字符串。BIOS开机后给每个PCIe设备分配好固定的槽位号(Slot1~n)后写入VPD。构造BMC web丝印编辑管理界面,方便用户灵活改动每个设备槽位号对应的丝印信息。建立BMC使用MCTP over PCIe向每个PCIe设备VPD中读取设备槽位号,并写入每个设备的槽位号对应的丝印信息的程序。构造通用的BIOS读取VPD丝印信息函数,在BIOS setup中可以显示每个设备对应的槽位丝印。构建BMC设备监测程序,在同一槽位设备更换后,设备serial number发生变化,将本槽位的丝印信息重新写入到新设备的VPD空间,丝印的固件适配工作比较高效,降低开发成本,更加人性化设计,提高PCIe、硬盘槽位丝印自动匹配的准确性,提高匹配效率。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在本实施例中还提供了一种标识信息配置装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图10是根据本申请实施例的一种标识信息配置装置的结构框图一,所述装置应用于服务器中的启动控制器,如图10所示,该装置包括:
识别模块,用于在所述服务器初次启动的过程中,识别所述服务器上接入的外接设备;
分配模块,用于在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系,其中,管理控制器用于在检测到服务器完成启动的情况下,获取所述外接设备的第一标识信息,并将所述第一标识信息写入所述存储器中与所述外接设备绑定的所述目标存储区间,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
第一提取模块,用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息;
第一构建模块,用于使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,其中,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
可选的,所述第一提取模块,包括:
第一筛选单元,用于从所述存储器所包括的存储区间中筛选出所携带的存储区间标识与所述外接设备的设备信息匹配的目标存储区间,其中,所述存储区间标识用于表征对应的所述存储区间所属的设备;
第一提取单元,用于根据所述目标存储区间对应的配置信息从所述目标存储区间中提取出所述第一标识信息,其中,所述配置信息用于指示所述目标存储区间中各个字节位置的数据存储情况。
可选的,所述第一提取单元,还用于:
查找所述配置信息中存储的第一偏移字段,其中,所述第一偏移字段用于指示表征所述外接设备在服务器中的物理接入位置的标识信息在所述目标存储区间中的位置情况;
将所述第一偏移字段所指示的字段位置上存储的字段确定为所述第一标识信息。
可选的,所述装置,还包括:
第一查找模块,用于在所述查找所述配置信息中存储的第一偏移字段之前,查找所述配置信息中存储的第二偏移字段,其中,所述第二偏移字段用于指示表征所述外接设备在服务器的操作系统中所接入的逻辑位置的标识信息在所述目标存储区间中的位置情况;
第二提取模块,用于提取所述目标存储区间中所述第二偏移字段所指示的字段位置上存储的第三标识信息,其中,所述第三标识信息为所述启动控制器在分配所述目标存储区间后存储的,所述第三标识信息用于指示所述目标存储区间所属的外接设备在服务器的操作系统中所接入的逻辑位置;
匹配模块,用于将所述第三标识信息和所述启动控制器中存储的所述第二标识信息进行匹配;
第二查找模块,用于在所述第三标识信息和所述第二标识信息匹配一致的情况下,执行查找所述配置信息中存储的第一偏移字段的操作。
可选的,所述分配模块,包括:
第一检测单元,用于检测所述外接设备所携带的参考存储器,其中,所述参考存储器为用于存储所述外接设备的设备运行信息的存储器,所述存储器包括所述参考存储器;
第一获取单元,用于获取所述参考存储器中各个存储区间的参考关键字,其中,所述参考关键字用于指示所述参考存储器的各个存储区间的数据存储情况;
第一确定单元,用于在多个所述参考关键字中存在第一关键字的情况下,将所述第一关键字对应的存储区间确定为所述目标存储区间,其中,所述第一关键字指示对应的所述存储区间处于未被占用状态。
可选的,所述分配模块,还包括:
第二检测单元,用于检测所述服务器中部署的目标存储器,其中,所述目标存储器为所述服务器中用于存储所述服务器运行信息的存储器,所述存储器包括所述目标存储器;
第二获取单元,用于获取所述目标存储器中各个存储区间的目标关键字,其中,所述目标关键字用于指示所述目标存储器的各个存储区间的数据存储情况;
第二确定单元,用于在多个所述目标关键字中存在第二关键字的情况下,将所述第二关键字对应的存储区间确定为所述目标存储区间,其中,所述第二关键字指示对应的存储区间处于未被占用状态。
可选的,所述装置,还包括:
第二获取模块,用于在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系之后,获取所述服务器初次启动的过程中为所述外接设备分配的所述第二标识信息;
第二写入模块,用于将所述第二标识信息写入所述目标存储区间,并将指示所述第二标识信息在所述目标存储区间的写入位置的第二偏移字段写入到所述目标存储区间对应的配置信息中,其中,所述配置信息用于指示所述目标存储区间中各个字节位置的数据存储情况。
可选的,所述第一构建模块,包括:
构建单元,用于构建每个所述外接设备的所述第一标识信息和所述第二标识信息之间的目标映射关系;
第三确定单元,用于将所述目标映射关系确定为所述外接设备的所述目标标识信息。
可选的,所述第一构建模块,还包括:
第三获取单元,用于获取识别到的所述外接设备的设备信息;
标记单元,用于使用所述设备信息对所述目标存储区间进行标记。
图11是根据本申请实施例的一种标识信息配置装置的结构框图二,所述装置应用于服务器中的管理控制器,如图11所示,该装置包括:
第一获取模块,用于在检测到所述服务器完成启动的情况下,获取服务器系统中接入的外接设备的第一标识信息,其中,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
第一写入模块,用于将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间,其中,所述目标存储区间为启动控制器在服务器初次启动过程中在所述存储器中为所述外接设备分配的,所述启动控制器用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息,使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
可选的,所述第一写入模块,包括:
第四获取单元,用于获取所述外接设备的设备信息;
第二筛选单元,用于从所述存储器所包括的存储区间中筛选出所携带的存储区间标识与所述外接设备的设备信息匹配的目标存储区间,其中,所述存储区间标识用于表征对应的所述存储区间所属的设备;
写入单元,用于将所述第一标识信息写入所述目标存储区间。
可选的,所述写入单元,还用于:
根据所述目标存储区间的配置信息查找所述目标存储区间中未被占用的目标字节位置,所述配置信息用于指示所述目标存储区间中各个字节位置的数据存储情况;
将所述第一标识信息写入所述目标字节位置,并将所述目标字节位置所对应的第一偏移字段写入所述配置信息中,其中,所述第一偏移字段用于指示所述目标字节位置在所述目标存储区中的位置情况。
可选的,所述装置,还包括:
第三提取模块,用于提取所述目标存储区间中存储的所述外接设备的所述第二标识信息;
第二构建模块,用于构建所述外接设备的所述第一标识信息和所述第二标识信息之间的目标映射关系;
发送模块,用于将所述目标映射关系发送与所述服务器具有绑定关系的显示终端,其中,所述显示终端用于显示所述目标映射关系并根据所述目标映射关系管理所述服务器中接入的设备。
可选的,所述第三提取模块,包括:
第二提取单元,用于提取所述目标存储区间的配置信息中存储的第三偏移字段,其中,所述第三偏移字段用于指示表征所述外接设备在服务器的操作系统中所接入的逻辑位置的标识信息在所述目标存储区间中的位置情况;
第三提取单元,用于提取所述目标存储区间中所述第三偏移字段所指示的字段位置上存储的所述第二标识信息。
可选的,所述装置,还包括:
接收模块,用于接收标识信息更新请求,其中,所述标识信息更新请求用于指示所述外接设备的所述第一标识信息被更新为第四标识信息;
响应模块,用于响应所述标识信息更新请求,在所述存储器中查找与所述外接设备绑定的所述目标存储区间;
更新模块,用于使用所述第四标识信息对所述目标存储区间中存储的所述第一标识信息进行更新。
通过上述内容,在服务器初次启动过程中,服务器中的启动控制器识别服务器上接入的外接设备,为识别到的外接设备分配用于指示外接设备在服务器的操作系统中所接入的逻辑位置的第二标识信息,并在服务器中部署的存储器中为每个外接设备分配目标存储区间,并构建目标存储区间和外接设备之间的绑定关系,进而管理控制器能够在检测到服务器完成启动的情况下,获取外接设备的用于指示其在服务器中的物理接入位置的第一标识信息,并将第一标识信息写入存储器中与外接设备绑定的目标存储区间中,进而在服务器再次启动的过程中,启动控制器能够提取目标存储区间中的第一标识信息,并使用第一标识信息和第二标识信息为外部设备构建目标标识信息,进而操作系统能够使用目标标识信息维护外接设备的运行状态。因此,可以解决相关技术中服务器对外接设备的维护效率较低的问题,达到提高服务器对外接设备的维护效率的效果。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本申请的实施例还提供了一种电子设备,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子设备还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本申请的实施例还提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时实现上述任一项方法实施例中的步骤。
本申请的实施例还提供了另一种计算机程序产品,包括非易失性计算机可读存储介质,所述非易失性计算机可读存储介质存储计算机程序,所述计算机程序被处理器执行时实现上述任一项方法实施例中的步骤。
本中请的实施例还提供了一种计算机程序,该计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质;计算机设备的处理器从计算机可读存储介质读取该计算机指令,处埋器执行该计算机指令,使得该计算机设备执行上述任一项方法实施例中的步骤。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (21)
1.一种标识信息配置方法,其特征在于,
所述方法应用于服务器中的启动控制器,包括:
在所述服务器初次启动的过程中,识别所述服务器上接入的外接设备;
在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系,其中,管理控制器用于在检测到服务器完成启动的情况下,获取所述外接设备的第一标识信息,并将所述第一标识信息写入所述存储器中与所述外接设备绑定的所述目标存储区间,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息;
使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,其中,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
2.根据权利要求1所述的方法,其特征在于,
所述提取所述目标存储区间中存储的所述第一标识信息,包括:
从所述存储器所包括的存储区间中筛选出所携带的存储区间标识与所述外接设备的设备信息匹配的目标存储区间,其中,所述存储区间标识用于表征对应的所述存储区间所属的设备;
根据所述目标存储区间对应的配置信息从所述目标存储区间中提取出所述第一标识信息,其中,所述配置信息用于指示所述目标存储区间中各个字节位置的数据存储情况。
3.根据权利要求2所述的方法,其特征在于,
所述根据所述目标存储区间对应的配置信息从所述目标存储区间中提取出所述第一标识信息,包括:
查找所述配置信息中存储的第一偏移字段,其中,所述第一偏移字段用于指示表征所述外接设备在服务器中的物理接入位置的标识信息在所述目标存储区间中的位置情况;
将所述第一偏移字段所指示的字段位置上存储的字段确定为所述第一标识信息。
4.根据权利要求3所述的方法,其特征在于,
在所述查找所述配置信息中存储的第一偏移字段之前,所述方法还包括:
查找所述配置信息中存储的第二偏移字段,其中,所述第二偏移字段用于指示表征所述外接设备在服务器的操作系统中所接入的逻辑位置的标识信息在所述目标存储区间中的位置情况;
提取所述目标存储区间中所述第二偏移字段所指示的字段位置上存储的第三标识信息,其中,所述第三标识信息为所述启动控制器在分配所述目标存储区间后存储的,所述第三标识信息用于指示所述目标存储区间所属的外接设备在服务器的操作系统中所接入的逻辑位置;
将所述第三标识信息和所述启动控制器中存储的所述第二标识信息进行匹配;
在所述第三标识信息和所述第二标识信息匹配一致的情况下,执行查找所述配置信息中存储的第一偏移字段的操作。
5.根据权利要求1所述的方法,其特征在于,
所述在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,包括:
检测所述外接设备所携带的参考存储器,其中,所述参考存储器为用于存储所述外接设备的设备运行信息的存储器,所述存储器包括所述参考存储器;
获取所述参考存储器中各个存储区间的参考关键字,其中,所述参考关键字用于指示所述参考存储器的各个存储区间的数据存储情况;
在多个所述参考关键字中存在第一关键字的情况下,将所述第一关键字对应的存储区间确定为所述目标存储区间,其中,所述第一关键字指示对应的所述存储区间处于未被占用状态。
6.根据权利要求1所述的方法,其特征在于,
所述在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,包括:
检测所述服务器中部署的目标存储器,其中,所述目标存储器为所述服务器中用于存储所述服务器运行信息的存储器,所述存储器包括所述目标存储器;
获取所述目标存储器中各个存储区间的目标关键字,其中,所述目标关键字用于指示所述目标存储器的各个存储区间的数据存储情况;
在多个所述目标关键字中存在第二关键字的情况下,将所述第二关键字对应的存储区间确定为所述目标存储区间,其中,所述第二关键字指示对应的存储区间处于未被占用状态。
7.根据权利要求1所述的方法,其特征在于,
在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系之后,所述方法还包括:
获取所述服务器初次启动的过程中为所述外接设备分配的所述第二标识信息;
将所述第二标识信息写入所述目标存储区间,并将指示所述第二标识信息在所述目标存储区间的写入位置的第二偏移字段写入到所述目标存储区间对应的配置信息中,其中,所述配置信息用于指示所述目标存储区间中各个字节位置的数据存储情况。
8.根据权利要求1所述的方法,其特征在于,
所述使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,包括:
构建每个所述外接设备的所述第一标识信息和所述第二标识信息之间的目标映射关系;
将所述目标映射关系确定为所述外接设备的所述目标标识信息。
9.根据权利要求1所述的方法,其特征在于,
所述构建所述目标存储区间和所述外接设备之间的绑定关系,包括:
获取识别到的所述外接设备的设备信息;
使用所述设备信息对所述目标存储区间进行标记。
10.一种标识信息配置方法,其特征在于,
所述方法应用于服务器中的管理控制器,包括:
在检测到所述服务器完成启动的情况下,获取服务器系统中接入的外接设备的第一标识信息,其中,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间,其中,所述目标存储区间为启动控制器在服务器初次启动过程中在所述存储器中为所述外接设备分配的,所述启动控制器用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息,使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
11.根据权利要求10所述的方法,其特征在于,
所述将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间,包括:
获取所述外接设备的设备信息;
从所述存储器所包括的存储区间中筛选出所携带的存储区间标识与所述外接设备的设备信息匹配的目标存储区间,其中,所述存储区间标识用于表征对应的所述存储区间所属的设备;
将所述第一标识信息写入所述目标存储区间。
12.根据权利要求11所述的方法,其特征在于,
所述将所述第一标识信息写入所述目标存储区间,包括:
根据所述目标存储区间的配置信息查找所述目标存储区间中未被占用的目标字节位置,所述配置信息用于指示所述目标存储区间中各个字节位置的数据存储情况;
将所述第一标识信息写入所述目标字节位置,并将所述目标字节位置所对应的第一偏移字段写入所述配置信息中,其中,所述第一偏移字段用于指示所述目标字节位置在所述目标存储区中的位置情况。
13.根据权利要求10所述的方法,其特征在于,
在所述将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间之后,所述方法还包括:
提取所述目标存储区间中存储的所述外接设备的所述第二标识信息;
构建所述外接设备的所述第一标识信息和所述第二标识信息之间的目标映射关系;
将所述目标映射关系发送与所述服务器具有绑定关系的显示终端,其中,所述显示终端用于显示所述目标映射关系并根据所述目标映射关系管理所述服务器中接入的设备。
14.根据权利要求13所述的方法,其特征在于,
所述提取所述目标存储区间中存储的所述外接设备的所述第二标识信息,包括:
提取所述目标存储区间的配置信息中存储的第三偏移字段,其中,所述第三偏移字段用于指示表征所述外接设备在服务器的操作系统中所接入的逻辑位置的标识信息在所述目标存储区间中的位置情况;
提取所述目标存储区间中所述第三偏移字段所指示的字段位置上存储的所述第二标识信息。
15.根据权利要求10所述的方法,其特征在于,
在所述将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间之后,所述方法还包括:
接收标识信息更新请求,其中,所述标识信息更新请求用于指示所述外接设备的所述第一标识信息被更新为第四标识信息;
响应所述标识信息更新请求,在所述存储器中查找与所述外接设备绑定的所述目标存储区间;
使用所述第四标识信息对所述目标存储区间中存储的所述第一标识信息进行更新。
16.一种标识信息配置系统,其特征在于,
服务器包括启动控制器和管理控制器,所述启动控制器和所述管理控制器分别和所述服务器中的存储器连接;
所述启动控制器,用于在所述服务器初次启动的过程中,识别所述服务器上接入的外接设备;在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系;
所述管理控制器,用于在检测到所述服务器完成启动的情况下,获取所述外接设备的第一标识信息,其中,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;将所述第一标识信息写入所述存储器中与所述外接设备绑定的所述目标存储区间;
所述启动控制器,还用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息;使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,其中,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
17.一种标识信息配置装置,所述装置应用于服务器中的启动控制器,其特征在于,
包括:
识别模块,用于在所述服务器初次启动的过程中,识别所述服务器上接入的外接设备;
分配模块,用于在所述服务器中部署的存储器中为每个所述外接设备分配目标存储区间,并构建所述目标存储区间和所述外接设备之间的绑定关系,其中,管理控制器用于在检测到服务器完成启动的情况下,获取所述外接设备的第一标识信息,并将所述第一标识信息写入所述存储器中与所述外接设备绑定的所述目标存储区间,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
第一提取模块,用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息;
第一构建模块,用于使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,其中,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
18.一种标识信息配置装置,所述装置应用于服务器中的管理控制器,其特征在于,
包括:
第一获取模块,用于在检测到所述服务器完成启动的情况下,获取服务器系统中接入的外接设备的第一标识信息,其中,所述第一标识信息用于指示所述外接设备在服务器中的物理接入位置;
第一写入模块,用于将所述第一标识信息写入到服务器中部署的存储器中与所述外接设备绑定的目标存储区间,其中,所述目标存储区间为启动控制器在服务器初次启动过程中在所述存储器中为所述外接设备分配的,所述启动控制器用于在所述服务器再次启动的过程中,提取所述目标存储区间中存储的所述第一标识信息,使用所述第一标识信息和第二标识信息为所述外接设备构建目标标识信息,所述第二标识信息为所述服务器初次启动过程中,所述启动控制器为识别到的所述外接设备分配的,所述第二标识信息用于指示所述外接设备在服务器的操作系统中所接入的逻辑位置,所述操作系统用于使用所述目标标识信息维护所述外接设备的运行状态。
19.一种计算机可读存储介质,其特征在于,
所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至15任一项中所述的方法的步骤。
20.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,
所述处理器执行所述计算机程序时实现所述权利要求1至15任一项中所述的方法的步骤。
21.一种计算机程序产品,包括计算机程序,其特征在于,
所述计算机程序被处理器执行时实现权利要求1至15任一项中所述的方法的步骤。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202510109438.1A CN119536832B (zh) | 2025-01-23 | 2025-01-23 | 标识信息配置方法、装置及系统 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN202510109438.1A CN119536832B (zh) | 2025-01-23 | 2025-01-23 | 标识信息配置方法、装置及系统 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| CN119536832A true CN119536832A (zh) | 2025-02-28 |
| CN119536832B CN119536832B (zh) | 2025-04-29 |
Family
ID=94694280
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| CN202510109438.1A Active CN119536832B (zh) | 2025-01-23 | 2025-01-23 | 标识信息配置方法、装置及系统 |
Country Status (1)
| Country | Link |
|---|---|
| CN (1) | CN119536832B (zh) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120234281A (zh) * | 2025-05-30 | 2025-07-01 | 苏州元脑智能科技有限公司 | 通信方法、电子设备、存储介质及程序产品 |
Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115793972A (zh) * | 2022-11-24 | 2023-03-14 | 新华三信息技术有限公司 | 一种存储设备管理方法、装置、设备及机器可读存储介质 |
| CN116302134A (zh) * | 2023-03-22 | 2023-06-23 | 苏州浪潮智能科技有限公司 | 外接设备处理方法、装置、电子设备和可读存储介质 |
| CN116827797A (zh) * | 2023-04-18 | 2023-09-29 | 超聚变数字技术有限公司 | PCIe带宽分配方法及服务器 |
| CN118035018A (zh) * | 2024-02-27 | 2024-05-14 | 苏州元脑智能科技有限公司 | 存储设备的检测方法及装置、存储介质和电子设备 |
| CN118567732A (zh) * | 2024-07-31 | 2024-08-30 | 苏州元脑智能科技有限公司 | 服务器快速启动系统、方法、设备、介质及程序产品 |
| CN118860772A (zh) * | 2024-06-24 | 2024-10-29 | 西安易朴通讯技术有限公司 | 硬件接口标准设备的定位方法、装置及服务器 |
| CN119046107A (zh) * | 2024-10-30 | 2024-11-29 | 苏州元脑智能科技有限公司 | 设备状态确定方法、设备、介质及产品 |
-
2025
- 2025-01-23 CN CN202510109438.1A patent/CN119536832B/zh active Active
Patent Citations (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN115793972A (zh) * | 2022-11-24 | 2023-03-14 | 新华三信息技术有限公司 | 一种存储设备管理方法、装置、设备及机器可读存储介质 |
| CN116302134A (zh) * | 2023-03-22 | 2023-06-23 | 苏州浪潮智能科技有限公司 | 外接设备处理方法、装置、电子设备和可读存储介质 |
| CN116827797A (zh) * | 2023-04-18 | 2023-09-29 | 超聚变数字技术有限公司 | PCIe带宽分配方法及服务器 |
| CN118035018A (zh) * | 2024-02-27 | 2024-05-14 | 苏州元脑智能科技有限公司 | 存储设备的检测方法及装置、存储介质和电子设备 |
| CN118860772A (zh) * | 2024-06-24 | 2024-10-29 | 西安易朴通讯技术有限公司 | 硬件接口标准设备的定位方法、装置及服务器 |
| CN118567732A (zh) * | 2024-07-31 | 2024-08-30 | 苏州元脑智能科技有限公司 | 服务器快速启动系统、方法、设备、介质及程序产品 |
| CN119046107A (zh) * | 2024-10-30 | 2024-11-29 | 苏州元脑智能科技有限公司 | 设备状态确定方法、设备、介质及产品 |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN120234281A (zh) * | 2025-05-30 | 2025-07-01 | 苏州元脑智能科技有限公司 | 通信方法、电子设备、存储介质及程序产品 |
| CN120234281B (zh) * | 2025-05-30 | 2025-09-02 | 苏州元脑智能科技有限公司 | 通信方法、电子设备、存储介质及程序产品 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN119536832B (zh) | 2025-04-29 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| CN114003538A (zh) | 一种智能网卡的识别方法及智能网卡 | |
| CN119536832B (zh) | 标识信息配置方法、装置及系统 | |
| CN116302134B (zh) | 外接设备处理方法、装置、电子设备和可读存储介质 | |
| CN114860271A (zh) | 一种pxe启动方法、系统、装置及可读存储介质 | |
| CN115134236A (zh) | 一种智能网卡管理的方法、装置、设备及可读介质 | |
| CN119201225B (zh) | 基本输入输出系统的基板管理控制器适配方法及程序产品 | |
| CN115878533A (zh) | Ai服务器的自适应配置方法、装置、设备和存储介质 | |
| CN115543460A (zh) | 服务器主板的初始化方法及装置 | |
| WO2025138561A1 (zh) | 处理器信息的处理方法和装置,非易失性可读存储介质及电子设备 | |
| WO2025118547A1 (zh) | 交互数据的传输方法、系统及装置、存储介质及电子设备 | |
| CN117785537A (zh) | 配置设备丝印信息的方法、装置、计算机设备及存储介质 | |
| CN113626276A (zh) | 服务器hba卡型号的识别方法、系统、终端及存储介质 | |
| CN114968386B (zh) | 一种电子设备的设备信息管理方法、装置及设备 | |
| CN114253573A (zh) | PCIe设备固件批量升级方法、系统、终端及存储介质 | |
| CN116028283A (zh) | 一种处理器测试系统、方法、装置及可读存储介质 | |
| CN118296037A (zh) | 服务器电源信息的查询方法和装置、存储介质及电子设备 | |
| CN118092624A (zh) | 服务器电源信息的检测方法和装置、存储介质及电子设备 | |
| CN116880769A (zh) | 硬盘槽位识别方法、装置、计算机设备及存储介质 | |
| CN116149941A (zh) | 服务器部件的监控方法、装置、服务器及存储介质 | |
| CN120743817B (zh) | 丝印信息的匹配方法、装置、电子设备、扩展卡 | |
| CN116389257B (zh) | 一种网卡链路层发现协议配置方法、装置、设备及介质 | |
| CN120711094B (zh) | 一种资产信息获取方法、装置、服务器、控制器及介质 | |
| CN121478591A (zh) | 一种硬盘监控方法、装置、设备及介质 | |
| CN121037232A (zh) | 设备信息获取方法及电子设备 | |
| CN118051302B (zh) | 一种基于nfc的单片机设备维护系统及方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| PB01 | Publication | ||
| PB01 | Publication | ||
| SE01 | Entry into force of request for substantive examination | ||
| SE01 | Entry into force of request for substantive examination | ||
| GR01 | Patent grant | ||
| GR01 | Patent grant |