CN117687695A - 信息处理方法、装置、电子设备及存储介质 - Google Patents

信息处理方法、装置、电子设备及存储介质 Download PDF

Info

Publication number
CN117687695A
CN117687695A CN202311434774.0A CN202311434774A CN117687695A CN 117687695 A CN117687695 A CN 117687695A CN 202311434774 A CN202311434774 A CN 202311434774A CN 117687695 A CN117687695 A CN 117687695A
Authority
CN
China
Prior art keywords
pcie
configuration information
resource
resource configuration
information
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.)
Pending
Application number
CN202311434774.0A
Other languages
English (en)
Inventor
朱士禄
李道童
芦飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Metabrain Intelligent Technology Co Ltd
Original Assignee
Suzhou Metabrain Intelligent Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Suzhou Metabrain Intelligent Technology Co Ltd filed Critical Suzhou Metabrain Intelligent Technology Co Ltd
Priority to CN202311434774.0A priority Critical patent/CN117687695A/zh
Publication of CN117687695A publication Critical patent/CN117687695A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4411Configuring for operating with peripheral devices; Loading of device drivers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1415Saving, restoring, recovering or retrying at system level
    • G06F11/1438Restarting or rejuvenating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/544Buffers; Shared memory; Pipes

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供一种信息处理方法、装置、电子设备及存储介质,涉及信息处理技术领域,包括:在基本输入输出系统开机的过程中,从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。

Description

信息处理方法、装置、电子设备及存储介质
技术领域
本发明涉及信息处理技术领域,尤其涉及一种信息处理方法、装置、电子设备及存储介质。
背景技术
在PCIe总线中,每个设备都可能会被分配一些资源,例如包括ID资源、Memory资源和IO资源;ID资源、Memory资源和IO资源都有其特定的地址范围和访问方式。在PCIe配置过程中系统会将这些资源地址映射到内存地址空间或IO地址空间中以便CPU和设备之间进行数据传输和通信。
而相关技术中,对于PCIe的资源分配,通常都是在早期预先进行一个固定的资源分配,开发新设备后,适配都需要重新开发BIOS版本,适配复杂,大大延迟产品上市时间。
发明内容
本发明提供一种信息处理方法、装置、电子设备及存储介质,用以解决现有技术中开发新设备后,适配都需要重新开发BIOS版本,适配复杂的缺陷。
本发明提供一种信息处理方法,包括:
在基本输入输出系统开机的过程中,从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;
在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;
在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。
根据本发明提供的一种信息处理方法,在所述从共享内存中读取PCIE资源配置信息的步骤之前,还包括:
获取PCIE资源配置信息,将所述PCIE资源配置信息通过redfish协议发送给基板管理控制器;
所述基板管理控制器将所述PCIE资源配置信息作为长期配置信息进行保存,并将所述PCIE资源配置信息写入所述共享内存。
根据本发明提供的一种信息处理方法,在所述从共享内存中读取PCIE资源配置信息的步骤之后,还包括:
所述基本输入输出系统对所述PCIE资源配置信息进行数据有效校验;其中,所述数据有效性校验包括以下至少一种校验方式:校验MD5值是否正确的校验,资源分配是否连续的校验,资源分配是否在系统允许的最大范围内的校验;
在所述数据有效校验通过的情况下,确定所述资源配置信息为有效数据。
根据本发明提供的一种信息处理方法,所述基本输入输出系统对所述PCIE资源配置信息进行数据有效校验的步骤之后,还包括:
在所述数据有效校验未通过的情况下,向基板管理控制器发送资源配置失败信息;
其中,所述资源配置失败信息用于提示用户修改所述PCIE资源配置信息。
根据本发明提供的一种信息处理方法,在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口的步骤之后,还包括:
在PCIE扫描阶段,检查各个所述PCIE端口的资源分配是否满足系统配置要求;
在任一所述PCIE端口的资源分配不满足预设系统配置要求的情况下,向基板管理控制器发送错误报告,并生成错误日志;其中,所述错误日志用于提示用户修改所述PCIE资源配置信息。
根据本发明提供的一种信息处理方法,所述向基板管理控制器发送错误报告,并生成错误日志的步骤之后,还包括:
基本输入输出系统自动重启;
并使用代码默认配置进行自动重启。
根据本发明提供的一种信息处理方法,所述方法还包括:
在需要更新所述PCIE资源配置信息的情况下,通过所述redfish协议向所述基板管理控制器发送新的PCIE资源配置信息;
所述基板管理控制器在收到新的PCIE资源配置信息之后,会将所述新的PCIE资源配置信息更新到所述共享内存中。
本发明还提供一种信息处理装置,包括:
读取模块,用于在基本输入输出系统开机的过程中,从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;
分配模块,用于在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;
处理模块,用于在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。
可选地,所述装置还用于:
获取PCIE资源配置信息,将所述PCIE资源配置信息通过redfish协议发送给基板管理控制器;
所述基板管理控制器将所述PCIE资源配置信息作为长期配置信息进行保存,并将所述PCIE资源配置信息写入所述共享内存。
可选地,所述装置还用于:
所述基本输入输出系统对所述PCIE资源配置信息进行数据有效校验;其中,所述数据有效性校验包括以下至少一种校验方式:校验MD5值是否正确的校验,资源分配是否连续的校验,资源分配是否在系统允许的最大范围内的校验;
在所述数据有效校验通过的情况下,确定所述资源配置信息为有效数据。
可选地,所述装置还用于:
在所述数据有效校验未通过的情况下,向基板管理控制器发送资源配置失败信息;
其中,所述资源配置失败信息用于提示用户修改所述PCIE资源配置信息。
可选地,所述装置还用于:
在PCIE扫描阶段,检查各个所述PCIE端口的资源分配是否满足系统配置要求;
在任一所述PCIE端口的资源分配不满足预设系统配置要求的情况下,向基板管理控制器发送错误报告,并生成错误日志;其中,所述错误日志用于提示用户修改所述PCIE资源配置信息。
可选地,所述装置还用于:
基本输入输出系统自动重启;
并使用代码默认配置进行自动重启。
可选地,所述装置还用于:
在需要更新所述PCIE资源配置信息的情况下,通过所述redfish协议向所述基板管理控制器发送新的PCIE资源配置信息;
所述基板管理控制器在收到新的PCIE资源配置信息之后,会将所述新的PCIE资源配置信息更新到所述共享内存中。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述信息处理方法。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述信息处理方法。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述信息处理方法。
本发明提供的一种信息处理方法、装置、电子设备及存储介质,通过基本输入输出系统和所述基板管理控制器的共享内存来缓存PCIE资源配置信息,从而使得基本输入输出系统开机的过程中可以直接从共享内存中读取PCIE资源配置信息,并且进行对应的PCIE资源分配,实现更改配置或者新增配置时无需重新发布版本,只需要向基板管理控制器导入新的配置文件即可,极大的缩短了新配置的开发、出货周期,只需要按照规则写入配置文件,在产线生产中导入基板管理控制器就可以实现快速生产。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的信息处理方法流程示意图;
图2为本申请实施例提供的流程示意图之一;
图3为本申请实施例提供的流程示意图之二;
图4为本申请实施例提供的信息处理装置结构示意图;
图5是本发明提供的电子设备的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本申请实施例提供的信息处理方法流程示意图,如图1所示,包括:
步骤110,在基本输入输出系统开机的过程中,从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;
在本申请实施例中,PCIE资源配置信息具体可以包括ID资源配置信息、Memory资源配置信息和IO资源配置信息,其中,ID资源配置信息:包括设备的厂商ID和设备ID。厂商ID用于唯一标识设备的制造商,设备ID用于唯一标识具体的设备型号和类型。操作系统可以使用这些ID来匹配设备驱动程序,以便正确识别和初始化设备。内存资源配置信息:包括Base Address Register的配置。每个PCIe设备都有一组BAR寄存器,用于指示设备所需的内存地址范围。操作系统将根据这些BAR配置信息为设备分配适当的内存地址空间,以便设备可以访问和使用这些内存资源。IO资源配置信息:包括IO端口的配置。某些PCIe设备可能需要使用特定的IO端口与系统进行通信。IO资源配置信息包括设备所需的IO端口范围和分配给设备的IO端口地址。
这些配置信息存储在共享内存中供BIOS和其他软件使用。操作系统根据这些配置信息,初始化PCIe设备并为其分配适当的资源,以便设备可以正常运行并与其他系统组件进行通信。
基本输入输出系统(Basic Input Output System,BIOS)是计算机系统启动时负责初始化硬件设备的固件程序。主板管理控制器(Baseboard Management Controller,BMC)是一个独立的处理器,负责监控和管理计算机硬件的运行状态,BIOS和BMC可以使用共享内存作为它们之间的通信通道。共享内存是一块特定区域的内存空间,可以由多个进程或处理器访问和共享。在这种情况下,BIOS和BMC可以将需要交换的信息写入共享内存的特定位置,并通过读取共享内存中的数据来获取彼此所需的信息。
通过使用共享内存,BIOS可以将PCIe设备的配置信息写入共享内存,然后BMC可以读取这些信息。这样,BMC就能够获得有关PCIe设备和资源的相关信息,从而进行管理和监控。
步骤120,在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;
BIOS校验从BMC获取到的数据是否有效,资源配置信息为有效数据的情况下,则可以进一步对其进行处理,根据资源配置信息,对于每个PCIe端口,确定可用的资源范围,包括内存和IO资源。这些资源范围通常由BAR(Base Address Register)值来表示。
根据资源配置信息,为每个PCIe端口分配适当的资源。这可能包括分配一块内存地址空间和一组IO端口地址。将分配的资源信息写入相关的配置寄存器,以便PCIe设备可以正确识别和使用分配的资源。这些配置寄存器通常是PCIe设备的控制寄存器。
步骤130,在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。
完成PCIe资源分配后,需要对系统进行验证和测试,以确保资源的分配和配置符合预期。具体可以通过读取配置寄存器或执行相关的测试程序来验证分配的资源是否正确。
在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,使用档期配置正常开机,并发送命令,删除BMC缓存中的pcie配置文件。pcie资源分配完成,代码正常开机进系统。
在本申请实施例中,通过基本输入输出系统和所述基板管理控制器的共享内存来缓存PCIE资源配置信息,从而使得基本输入输出系统开机的过程中可以直接从共享内存中读取PCIE资源配置信息,并且进行对应的PCIE资源分配,实现更改配置或者新增配置时无需重新发布版本,只需要向基板管理控制器导入新的配置文件即可,极大的缩短了新配置的开发、出货周期,只需要按照规则写入配置文件,在产线生产中导入基板管理控制器就可以实现快速生产。
在一个可选地实施例中,在基本输入输出系统开机的过程中,访问共享内存,检查是否存在pcie资源配置信息,若存在,则可以进一步从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;
基本输入输出系统对所述PCIE资源配置信息进行数据有效校验;其中,所述数据有效性校验包括以下至少一种校验方式:校验MD5值是否正确的校验,资源分配是否连续的校验,资源分配是否在系统允许的最大范围内的校验;
在所述数据有效校验通过的情况下,确定所述资源配置信息为有效数据。
在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;
在PCIE扫描阶段,检查各个所述PCIE端口的资源分配是否满足系统配置要求;
在任一所述PCIE端口的资源分配不满足预设系统配置要求的情况下,向基板管理控制器发送错误报告,并生成错误日志;其中,所述错误日志用于提示用户修改所述PCIE资源配置信息。
在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。
可选地,在所述从共享内存中读取PCIE资源配置信息的步骤之前,还包括:
获取PCIE资源配置信息,将所述PCIE资源配置信息通过redfish协议发送给基板管理控制器;
所述基板管理控制器将所述PCIE资源配置信息作为长期配置信息进行保存,并将所述PCIE资源配置信息写入所述共享内存。
在本申请实施例中,使用对应的系统管理工具,例如BIOS配置界面、操作系统命令行工具或专门的硬件管理软件来获取PCIe资源配置信息。这些资源配置信息可能包括每个PCIe端口的BAR值(Base Address Register)和其他相关配置。
在本申请实施例中,可以根据Redfish规范,构建一个包含PCIe资源配置信息的数据结构。这可以是JSON或XML格式,并包含必要的字段和属性来描述PCIe端口的资源配置。
更具体地,还可以使用适当的Redfish客户端库或工具,通过Redfish协议与基板管理控制器建立连接,并将构建的PCIe资源配置信息数据结构发送给基板管理控制器。具体可以通过向基板管理控制器提供相应的Redfish API端点URL来完成。
基板管理控制器接收到PCIe资源配置信息后,会根据其内部逻辑和策略对这些信息进行处理和应用,并将其写入到共享内存中。
在本申请实施例中,实现更改配置或者新增配置时无需重新发布版本,只需要向BMC导入新的配置文件即可
可选地,在所述从共享内存中读取PCIE资源配置信息的步骤之后,还包括:
所述基本输入输出系统对所述PCIE资源配置信息进行数据有效校验;其中,所述数据有效性校验包括以下至少一种校验方式:校验MD5值是否正确的校验,资源分配是否连续的校验,资源分配是否在系统允许的最大范围内的校验;
在所述数据有效校验通过的情况下,确定所述资源配置信息为有效数据。
在本申请实施例中,对PCIe资源配置信息进行数据有效性校验是确保配置信息的完整性和正确性的重要步骤,至少包括一种校验方式:
校验MD5值:计算所述PCIe资源配置信息数据的MD5哈希值,并与预先计算的正确的MD5值进行比较。如果两者匹配,则说明配置信息在传输过程中没有发生意外更改。
资源分配连续性校验:检查每个PCIe端口的资源分配是否连续。这可以通过验证BAR(Base Address Register)值之间的连续性来实现。例如,对于按顺序编址的内存资源,BAR的起始地址和大小应按照递增的顺序排列,并且不应有重叠或间隙。
资源分配范围校验:检查资源分配是否在系统允许的最大范围内。这可能涉及验证每个PCIe端口的资源起始地址和大小是否在系统规定的有效范围内。如果超出了系统规定的范围,可能会导致资源冲突或无法正确访问资源。
可选地,这些校验方式可以结合使用,以提高对PCIe资源配置信息的数据有效性校验。例如,在校验MD5值的同时,也可以进行资源分配连续性和范围的校验,以确保配置信息的完整性和合法性。
根据校验结果判断PCIe资源配置信息的有效性。如果校验通过且满足所有校验条件,则可以确认该配置信息是有效的。
将通过数据有效性校验的PCIe资源配置信息标记为有效数据,以便后续使用和处理。
在本申请实施例中,对PCIE资源配置信息进行数据有效校验,能够有效确保配置信息的完整性和正确性。
可选地,所述基本输入输出系统对所述PCIE资源配置信息进行数据有效校验的步骤之后,还包括:
在所述数据有效校验未通过的情况下,向基板管理控制器发送资源配置失败信息;
其中,所述资源配置失败信息用于提示用户修改所述PCIE资源配置信息。
在本申请实施例中,如果校验结果不符合预期,则表示资源配置信息存在错误或损坏,可以进一步根据校验结果生成相应的错误消息。错误消息应包含所述资源配置失败的原因、失败的PCIe端口和相关的错误信息等。
在一个可选地实施例中,可以向用户发出失败信息,以实现警告或提醒,提示其检查并修改PCIe资源配置信息。建议在错误消息中提供详细的指导和建议,以帮助用户快速定位和解决问题。
可选地,在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口的步骤之后,还包括:
在PCIE扫描阶段,检查各个所述PCIE端口的资源分配是否满足系统配置要求;
在任一所述PCIE端口的资源分配不满足预设系统配置要求的情况下,向基板管理控制器发送错误报告,并生成错误日志;其中,所述错误日志用于提示用户修改所述PCIE资源配置信息。
在本申请实施例中,PCIE扫描阶段,对所有PCIe端口进行扫描,并检查其资源分配情况,具体可以是对所述每个PCIe端口的资源分配进行校验,以确保其满足系统预设的配置要求。具体可以包括分配范围、资源类型、资源数量等配置要求。
进一步,可以判断每个PCIe端口的校验结果,如果存在任何一个PCIe端口的资源分配不符合预设系统配置要求,则表示出现错误。
在检测到出现错误的情况下,向基板管理控制器发送错误报告,说明出现问题的PCIe端口和具体的错误信息。可以使用基板管理控制器定义的命令、接口或协议来发送错误报告。
可选地,在检测到PCIE端口的资源分配不满足系统配置要求后,生成错误日志:在本地生成错误日志,以便后续排查问题。错误日志应包含出现问题的PCIe端口、错误原因、详细的错误信息等。
在本申请实施例中,通过检查各个所述PCIE端口的资源分配是否满足系统配置要求可以帮助系统及时发现配置错误并进行修复,从而保证系统稳定性和可靠性。
可选地,所述方法还包括:
在需要更新所述PCIE资源配置信息的情况下,通过所述redfish协议向所述基板管理控制器发送新的PCIE资源配置信息;
所述基板管理控制器在收到新的PCIE资源配置信息之后,会将所述新的PCIE资源配置信息更新到所述共享内存中。
在本申请实施例中,可以根据需求或用户提供的新配置,生成新的PCIE资源配置信息。具体包括PCIe设备的分配范围、资源类型、资源数量等。
更具体的,使用Redfish协议建立与基板管理控制器的通信连接。通过Redfish协议,向基板管理控制器发送新的PCIE资源配置信息。可以使用Redfish中定义的相应操作请求来发送这些信息。
基板管理控制器接收到新的PCIE资源配置信息后,会将其更新到共享内存中。BIOS可以从共享内存中读取新的PCIE资源配置信息,并根据配置进行相应的初始化和调整。
图2为本申请实施例提供的流程示意图之一,如图2所示,包括:首先,生成pcie资源配置文件;通过postman或其他支持redfish协议的工具将配置文件发送给BMC;
BMC将文件导入BMC flash中用长期保存配置信息,同时在BIOS与bmc的共享内存生成一份临时文件,用作BIOS读取文件使用;
BIOS开机过程中早期阶段,从BMC获取pcie资源配置文件;
BIOS校验数据有效后使用从BMC获取到的PCIE资源配置开机;
BMC收到删除配置文件的请求后,删除缓存中的pcie资源配置文件,防止BIOS重复读取。
图3为本申请实施例提供的流程示意图之二,如图3所示,包括:
.BIOS开机,访问共享内存,检查是否存在pcie资源配置文件;
BIOS开机初期从BMC与bios共享内存获取PCIE资源配置文件(或者通过IPMI命令等其他接口,实现与bmc的资源共享);
BIOS校验从BMC获取到的数据是否有效(包括校验MD5值是否正确,资源分配是否连续,资源分配是否在系统允许的最大范围内,如果不符合要求则发送配置失败状态给bmc,并记录日志,提示用户修改配置);
文件校验通过后使用获取到的配置分配pcie资源给每个pcie port(DINO设备以及stack0特殊设备需要按照intel spce要求预留资源);
BIOS继续开机,代码继续执行,在pcie scan阶段确认资源分配是否满足系统配置要求(防止pcie资源分配只是符合规则,但是不符合实际配置情况,导致系统出现异常);
如果不满足要求,则发送pcie资源配置失败状态给bmc,并记录一条错误日志,提示用户修改配置问题,bios记录失败标志后自动重启,重启后使用代码默认配置开机;
如果满足要求,则使用档期配置正常开机,并发送命令,删除BMC缓存中的pcie配置文件。
pcie资源分配完成,代码正常开机进系统。
下面对本发明提供的信息处理装置进行描述,下文描述的信息处理装置与上文描述的信息处理方法可相互对应参照。
图4为本申请实施例提供的信息处理装置结构示意图,如图4所示,包括:
读取模块410用于在基本输入输出系统开机的过程中,从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;
分配模块420用于在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;
处理模块430用于在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。
可选地,所述装置还用于:
获取PCIE资源配置信息,将所述PCIE资源配置信息通过redfish协议发送给基板管理控制器;
所述基板管理控制器将所述PCIE资源配置信息作为长期配置信息进行保存,并将所述PCIE资源配置信息写入所述共享内存。
可选地,所述装置还用于:
所述基本输入输出系统对所述PCIE资源配置信息进行数据有效校验;其中,所述数据有效性校验包括以下至少一种校验方式:校验MD5值是否正确的校验,资源分配是否连续的校验,资源分配是否在系统允许的最大范围内的校验;
在所述数据有效校验通过的情况下,确定所述资源配置信息为有效数据。
可选地,所述装置还用于:
在所述数据有效校验未通过的情况下,向基板管理控制器发送资源配置失败信息;
其中,所述资源配置失败信息用于提示用户修改所述PCIE资源配置信息。
可选地,所述装置还用于:
在PCIE扫描阶段,检查各个所述PCIE端口的资源分配是否满足系统配置要求;
在任一所述PCIE端口的资源分配不满足预设系统配置要求的情况下,向基板管理控制器发送错误报告,并生成错误日志;其中,所述错误日志用于提示用户修改所述PCIE资源配置信息。
可选地,所述装置还用于:
基本输入输出系统自动重启;
并使用代码默认配置进行自动重启。
可选地,所述装置还用于:
在需要更新所述PCIE资源配置信息的情况下,通过所述redfish协议向所述基板管理控制器发送新的PCIE资源配置信息;
所述基板管理控制器在收到新的PCIE资源配置信息之后,会将所述新的PCIE资源配置信息更新到所述共享内存中。
在本申请实施例中,通过基本输入输出系统和所述基板管理控制器的共享内存来缓存PCIE资源配置信息,从而使得基本输入输出系统开机的过程中可以直接从共享内存中读取PCIE资源配置信息,并且进行对应的PCIE资源分配,实现更改配置或者新增配置时无需重新发布版本,只需要向基板管理控制器导入新的配置文件即可,极大的缩短了新配置的开发、出货周期,只需要按照规则写入配置文件,在产线生产中导入基板管理控制器就可以实现快速生产。
图5是本发明提供的电子设备的结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(Communications Interface)520、存储器(memory)530和通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行信息处理方法,该方法包括:在基本输入输出系统开机的过程中,从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;
在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;
在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。
此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的信息处理方法,该方法包括:在基本输入输出系统开机的过程中,从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;
在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;
在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的信息处理方法,该方法包括:在基本输入输出系统开机的过程中,从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;
在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;
在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (10)

1.一种信息处理方法,其特征在于,包括:
在基本输入输出系统开机的过程中,从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;
在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;
在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。
2.根据权利要求1所述的信息处理方法,其特征在于,在所述从共享内存中读取PCIE资源配置信息的步骤之前,还包括:
获取PCIE资源配置信息,将所述PCIE资源配置信息通过redfish协议发送给基板管理控制器;
所述基板管理控制器将所述PCIE资源配置信息作为长期配置信息进行保存,并将所述PCIE资源配置信息写入所述共享内存。
3.根据权利要求1所述的信息处理方法,其特征在于,在所述从共享内存中读取PCIE资源配置信息的步骤之后,还包括:
所述基本输入输出系统对所述PCIE资源配置信息进行数据有效校验;其中,所述数据有效性校验包括以下至少一种校验方式:校验MD5值是否正确的校验,资源分配是否连续的校验,资源分配是否在系统允许的最大范围内的校验;
在所述数据有效校验通过的情况下,确定所述资源配置信息为有效数据。
4.根据权利要求3所述的信息处理方法,其特征在于,所述基本输入输出系统对所述PCIE资源配置信息进行数据有效校验的步骤之后,还包括:
在所述数据有效校验未通过的情况下,向基板管理控制器发送资源配置失败信息;
其中,所述资源配置失败信息用于提示用户修改所述PCIE资源配置信息。
5.根据权利要求1所述的信息处理方法,其特征在于,在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口的步骤之后,还包括:
在PCIE扫描阶段,检查各个所述PCIE端口的资源分配是否满足系统配置要求;
在任一所述PCIE端口的资源分配不满足预设系统配置要求的情况下,向基板管理控制器发送错误报告,并生成错误日志;其中,所述错误日志用于提示用户修改所述PCIE资源配置信息。
6.根据权利要求5所述的信息处理方法,其特征在于,所述向基板管理控制器发送错误报告,并生成错误日志的步骤之后,还包括:
基本输入输出系统自动重启;
并使用代码默认配置进行自动重启。
7.根据权利要求1所述的信息处理方法,其特征在于,所述方法还包括:
在需要更新所述PCIE资源配置信息的情况下,通过所述redfish协议向所述基板管理控制器发送新的PCIE资源配置信息;
所述基板管理控制器在收到新的PCIE资源配置信息之后,会将所述新的PCIE资源配置信息更新到所述共享内存中。
8.一种信息处理装置,其特征在于,包括:
读取模块,用于在基本输入输出系统开机的过程中,从共享内存中读取PCIE资源配置信息,其中,所述共享内存为所述基本输入输出系统和所述基板管理控制器的资源共享内存;
分配模块,用于在所述PCIE资源配置信息为有效数据的情况下,按照所述资源配置信息将PCIE资源分配给每个PCIE端口;
处理模块,用于在各个所述PCIE端口的资源分配满足预设系统配置要求的情况下,完成PCIE资源预留。
9.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至7任一项所述信息处理方法。
10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述信息处理方法。
CN202311434774.0A 2023-10-31 2023-10-31 信息处理方法、装置、电子设备及存储介质 Pending CN117687695A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311434774.0A CN117687695A (zh) 2023-10-31 2023-10-31 信息处理方法、装置、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311434774.0A CN117687695A (zh) 2023-10-31 2023-10-31 信息处理方法、装置、电子设备及存储介质

Publications (1)

Publication Number Publication Date
CN117687695A true CN117687695A (zh) 2024-03-12

Family

ID=90130801

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311434774.0A Pending CN117687695A (zh) 2023-10-31 2023-10-31 信息处理方法、装置、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN117687695A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117873853A (zh) * 2024-03-13 2024-04-12 苏州元脑智能科技有限公司 数据记录方法、装置、电子设备及介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117873853A (zh) * 2024-03-13 2024-04-12 苏州元脑智能科技有限公司 数据记录方法、装置、电子设备及介质
CN117873853B (zh) * 2024-03-13 2024-05-28 苏州元脑智能科技有限公司 数据记录方法、装置、电子设备及介质

Similar Documents

Publication Publication Date Title
US11726770B2 (en) Method, device, and apparatus for updating application program, and storage medium
CN110399267B (zh) 一种服务器pcie设备监控方法、系统、设备及可读存储介质
US7536599B2 (en) Methods and systems for validating a system environment
US11281768B1 (en) Firmware security vulnerability verification service
TW201709081A (zh) 自動修復映像檔的方法及伺服器系統
US10630637B2 (en) Method for ascertaining an IP address and a MAC address of a unit under test mounted in a rack server
CN113504932B (zh) 一种固件数据更新方法和装置
CN112328440B (zh) 一种硬盘物理位置确定方法和装置
CN117687695A (zh) 信息处理方法、装置、电子设备及存储介质
CN106547645B (zh) 自动修复映像档的方法及服务器系统
CN105978937A (zh) 一种蓝牙从设备及其升级方法
CN112099825A (zh) 组件进行升级的方法、装置、设备及存储介质
US11586536B1 (en) Remote configuration of multi-mode DIMMs through a baseboard management controller
CN115629825A (zh) 一种服务器及其资产信息获取方法、提供方法和装置
CN116225832A (zh) 数据库集群自动化部署的自动检测方法、存储介质及设备
US20070157014A1 (en) Apparatus for remote flashing of a bios memory in a data processing system
TW201413259A (zh) 硬體檢測系統及方法
TWI777664B (zh) 嵌入式系統的開機方法
US20070005819A1 (en) Apparatus and method to guarantee unique connection tags across resets in a connection protocol
CN112416847B (zh) Redis集群创建方法、系统及装置
US11204704B1 (en) Updating multi-mode DIMM inventory data maintained by a baseboard management controller
TWI587109B (zh) 用於安裝多個待測裝置之作業系統的系統架構及佈署方法
CN115291957B (zh) 多处理器主板的初始化方法和装置
CN117312183B (zh) 一种内存容量调整方法、装置、电子设备及存储介质
CN113672477B (zh) 基本输入输出系统的除错讯息自动提供方法

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