CN116368467A - 协调的初始化系统 - Google Patents

协调的初始化系统 Download PDF

Info

Publication number
CN116368467A
CN116368467A CN202180064594.0A CN202180064594A CN116368467A CN 116368467 A CN116368467 A CN 116368467A CN 202180064594 A CN202180064594 A CN 202180064594A CN 116368467 A CN116368467 A CN 116368467A
Authority
CN
China
Prior art keywords
initialization
subsystem
scp
initialization subsystem
progress 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
CN202180064594.0A
Other languages
English (en)
Inventor
E·吉瑞基
R·W·霍尔穆特
G·舒拉
M·S·桑德斯
W·P·道金斯
J·D·派克
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.)
Dell Products LP
Original Assignee
Dell Products LP
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 Dell Products LP filed Critical Dell Products LP
Publication of CN116368467A publication Critical patent/CN116368467A/zh
Pending legal-status Critical Current

Links

Images

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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • G06F16/2379Updates performed during online database operations; commit processing
    • 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/4405Initialisation of multiprocessor systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Stored Programmes (AREA)
  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)
  • Small-Scale Networks (AREA)

Abstract

一种协调的初始化系统包括计算系统,其具有耦合到协调的初始化子系统的第一初始化子系统和第二初始化子系统。协调的初始化子系统接收与由相应的第一初始化子系统和第二初始化子系统执行的相应的第一初始化子系统操作和第二初始化子系统操作相关联的第一初始化进度信息和第二初始化进度信息。使用标识第一初始化操作与第二初始化操作之间的相依性的协调的初始化数据库,协调的初始化子系统确定第一初始化进度信息标识将由第一初始化子系统执行并且取决于第二初始化操作的第一初始化操作,第二初始化操作由第二初始化进度信息标识并且尚未被第二初始化子系统执行;并且作为响应,使第一初始化子系统暂停第一初始化子系统操作,直到第二初始化操作已经执行为止。

Description

协调的初始化系统
背景技术
本公开总体上涉及信息处置系统,并且更具体地,涉及协调信息处置系统中的多个子系统的初始化。
随着信息的价值和使用持续增长,个人和企业寻求附加方式来处理和存储信息。用户可进行的一种选择是信息处置系统。信息处置系统通常处理、编译、存储和/或传达用于商业、个人或其他目的的信息或数据,从而允许用户利用这些信息的价值。由于技术和信息处置需求和要求在不同的用户或应用之间有所不同,因此信息处置系统关于以下方面也可能有所不同:处置什么信息,如何处置信息,处理、存储或传达多少信息,以及可多快速且多高效地处理、存储或传达信息。信息处置系统的变化允许信息处置系统是通用的或者针对特定用户或特定用途(诸如金融交易处理、航班预定、企业数据存储或全球通信)进行配置。另外,信息处置系统可以包括可以被配置为处理、存储和传达信息的多种硬件和软件部件,并且可以包括一个或多个计算机系统、数据存储系统和联网系统。
例如诸如服务器装置和/或本领域已知的其他计算系统的信息处置系统可以包括多个子系统,所述多个子系统各自被要求执行初始化操作以便初始化那些子系统和/或服务器装置。例如,本公开的发明人已经开发了系统控制处理器(SCP)子系统,所述SCP子系统可以提供在服务器装置和/或其他计算系统中以便为服务器装置/计算系统提供通信功能(例如,网络接口控制器(NIC)功能),同时还为该服务器装置/计算系统执行各种高级功能。然而,除了服务器装置中的BIOS子系统执行BIOS初始化操作以便初始化服务器装置之外,SCP子系统必须执行SCP初始化操作以初始化SCP子系统以便与服务器装置(例如,“裸机服务器”(BMS))一起操作。此外,由BIOS子系统执行的BIOS初始化操作可能要求一个或多个SCP初始化操作已经完成,以便适当地初始化BIOS子系统、SCP子系统和/或其他服务器装置。常规的初始化系统通过使SCP子系统首先开始并完成SCP初始化操作,然后使BIOS子系统开始并完成BIOS初始化操作来处理这个问题,这允许BIOS子系统、SCP子系统和/或其他服务器装置进行完整和适当的初始化,但也增加了初始化所需的时间并延迟了服务器装置的可用性。
因此,将期望提供一种解决上文讨论的问题的初始化系统。
发明内容
根据一个实施方案,信息处置系统包括处理系统;以及存储器系统,所述存储器系统耦合到处理系统并且包括指令,所述指令在由处理系统执行时,使处理系统提供协调的初始化引擎,所述协调的初始化引擎被配置为:在向计算系统提供初始化命令之后,从计算系统中的第一初始化子系统接收与由第一初始化子系统执行的第一初始化子系统操作相关联的第一初始化进度信息;在向计算系统提供初始化命令之后,从计算系统中的第二初始化子系统接收与由第二初始化子系统执行的第二初始化子系统操作相关联的第二初始化进度信息;使用标识第一初始化子系统操作与第二初始化操作之间的相依性的协调的初始化数据库来确定第一初始化进度信息标识将由第一初始化子系统执行并且取决于第二初始化操作的第一初始化操作,所述第二初始化操作由第二初始化进度信息标识且尚未被第二初始化子系统执行;并且响应于确定将由第一初始化子系统执行的第一初始化操作取决于尚未被第二初始化子系统执行的第二初始化操作,而使第一初始化子系统暂停第一初始化子系统操作,直到第二初始化操作已经执行为止。
附图说明
图1是示出信息处置系统(IHS)的实施方案的示意图。
图2是示出联网系统的实施方案的示意图。
图3是示出可以包括在图2的联网系统中并且可以利用本公开的协调的初始化系统的计算系统的实施方案的示意图。
图4是示出可以包括在图3的计算装置中的系统控制处理器(SCP)子系统的实施方案的示意图。
图5是示出可以包括在图3的计算装置中的底板管理控制器(BMC)子系统的实施方案的示意图。
图6是示出用于协调计算系统中的多个子系统的初始化的方法的实施方案的流程图。
图7A是示出图3的计算系统在图6的方法期间操作的实施方案的示意图。
图7B是示出图3的计算系统在图6的方法期间操作的实施方案的示意图。
图7C是示出图5的BMC子系统在图6的方法期间操作的实施方案的示意图。
图7D是示出图5的BMC子系统在图6的方法期间操作的实施方案的示意图。
图7E是示出在图6的方法期间可以包括在图3的计算系统中的BMC数据库的实施方案的示意图。
图7F是示出图3的计算系统在图6的方法期间操作的实施方案的示意图。
图7G是示出图3的计算系统在图6的方法期间操作的实施方案的示意图。
图7H是示出图3的计算系统在图6的方法期间操作的实施方案的示意图。
具体实施方式
出于本公开的目的,信息处置系统可以包括可操作来计算、运算、确定、分类、处理、传输、接收、检索、产生、切换、存储、显示、通信、表明、检测、记录、再现、处置或利用任何形式的信息、情报或数据以用于商业、科学、控制或其他目的的任何工具或工具集合。例如,信息处置系统可以是个人计算机(例如,桌上型或膝上型计算机)、平板计算机、移动装置(例如,个人数字助理(PDA)或智能电话)、服务器(例如,刀片服务器或机架服务器)、网络存储装置或任何其他合适的装置,并且在大小、形状、性能、功能和价格方面可以变化。信息处置系统可以包括随机存取存储器(RAM)、一个或多个处理资源(诸如中央处理单元(CPU)或者硬件或软件控制逻辑)、ROM和/或其他类型的非易失性存储器。信息处置系统的附加部件可以包括一个或多个磁盘驱动器、用于与外部装置通信的一个或多个网络端口、以及各种输入输出(I/O)装置(诸如键盘、鼠标、触摸屏和/或视频显示器)。信息处置系统还可以包括可操作来在各种硬件部件之间传输通信的一条或多条总线。
在一个实施方案中,IHS 100(图1)包括处理器102,所述处理器连接到总线104。总线104用作处理器102与IHS 100的其他部件之间的连接。输入装置106耦合到处理器102以向处理器102提供输入。输入装置的示例可以包括键盘、触摸屏、诸如鼠标、轨迹球和轨迹板等定点装置、和/或本领域已知的各种其他输入装置。程序和数据存储在大容量存储装置108上,所述大容量存储装置耦合到处理器102。大容量存储装置的示例可以包括硬盘、光盘、磁光盘、固态存储装置和/或本领域已知的各种其他大容量存储装置。IHS 100还包括显示器110,所述显示器通过视频控制器112耦合到处理器102。系统存储器114耦合到处理器102以为处理器提供快速存储以促进处理器102执行计算机程序。系统存储器的示例可以包括随机存取存储器(RAM)装置,诸如动态RAM(DRAM)、同步DRAM(SDRAM)、固态存储器装置和/或本领域已知的各种其他存储器装置。在实施方案中,机箱116容纳IHS 100的一些或所有部件。应当理解,可以在上述部件与处理器102之间部署其他总线和中间电路,以促进部件与处理器102之间的互连。
现在参考图2,示出了联网系统200的实施方案,其中可以利用本公开的协调的初始化系统。在所示实施方案中,联网系统200包括多个计算系统202a、202b及直至202c。在实施方案中,计算系统202a-202c可以由上文参考图1讨论的IHS 100提供,和/或可以包括IHS100的一些或所有部件,并且在具体示例中,可以由服务器装置提供。然而,虽然被讨论为由服务器装置提供,但是本公开所属领域的技术人员将认识到,联网系统200中提供的计算系统可以包括可以被配置为与下文讨论的计算系统202a-202c类似地操作的任何计算系统。在所示实施方案中,计算系统中的每一个可以耦合到网络204,所述网络可以由局域网(LAN)、互联网、其组合、和/或对于本公开所属领域的技术人员将显而易见的任何其他网络提供。
在所示实施方案中,管理系统206也耦合到网络204。在实施方案中,管理系统206可以由上文参考图1讨论的IHS 100提供,和/或可以包括IHS 100的一些或所有部件,并且在具体示例中,可以由一个或多个管理服务器装置提供,所述一个或多个管理服务器装置可以被配置为执行计算系统202a-202c的管理功能。在所示实施方案中,一个或多个网络附接装置208也耦合到网络204。在实施方案中,网络附接装置208可以由计算系统202a-202c可经由网络204访问的各种不同的网络附接装置提供,并且在具体示例中,可以由一个或多个非易失性存储器快速(NVMe)存储装置提供,所述非易失性存储器快速存储装置可以被配置为为计算系统202a-202c中的任一者或所有提供网络附接存储系统。然而,尽管已经示出并描述了具体的联网系统200,但是本公开所属领域的技术人员将认识到,本公开的平台信任根系统可以与各种部件和部件配置一起使用,和/或可以以各种计算系统/网络配置提供,同时也仍然在本公开的范围内。
现在参考图3,示出了计算系统300的实施方案,所述计算系统可以提供上文参考图2讨论的计算系统202a-202c中的任一者或所有。因此,计算系统300可以由上文参考图1讨论的IHS 100提供,和/或可以包括IHS 100的一些或所有部件,并且在具体示例中,可以由服务器装置提供。然而,虽然被示出和讨论为由服务器装置提供,但是本公开所属领域的技术人员将认识到,下文讨论的计算系统300的功能可以通过被配置为与下文讨论的计算系统300类似地操作的其他计算系统提供。在所示的实施方案中,计算系统300包括容纳计算系统300的部件的机箱302,下面仅示出所述部件中的一些。
例如,机箱302可以容纳多个初始化子系统,包括第一初始化子系统,在所示实施方案中,第一初始化子系统由系统控制处理器(SCP)子系统304提供。在一些示例中,SCP子系统304可以被概念化为“增强型”SmartNIC装置,其可以被配置为执行常规SmartNIC装置中不可用的功能,例如,诸如由本公开的发明人在2020年9月22日提交的代理人案卷号为16356.2212US01的美国专利申请第17/027,835号中描述的平台信任根功能,其公开内容以全文引用方式并入本文。然而,虽然该第一初始化子系统被示出和描述为由SCP子系统提供的增强型SmartNIC装置,但是本公开所属领域技术人员将理解初始化子系统可以由被配置为与如下讨论类似地执行初始化操作的各种其他子系统提供,同时也仍然在本公开的范围内。
在实施方案中,SCP子系统304可以由上文参考图1讨论的IHS 100提供,和/或可以包括IHS 100的一些或全部部件。在具体示例中,SCP子系统304可以被提供为SCP卡,所述SCP卡被配置为连接到机箱302中的母板上的插槽。在其他示例中,SCP子系统304可以集成到机箱302中的母板中。在还有一些其他示例中,SCP子系统304可以是连接到机箱302中的母板的单独/共母板电路板(例如,两部分母板,其具有实现常规母板功能的第一部分和启用下文讨论的SCP功能的第二部分)。然而,虽然提供了一些具体示例,但是本公开所属领域技术人员将理解,SCP子系统304可以以各种方式提供在计算系统300中,其将落在本公开的范围内。
机箱302还可以容纳中央处理系统306,所述中央处理系统耦合到SCP子系统304,并且可以包括上文参考图1讨论的处理器102、中央处理单元(CPU)(诸如x86主处理器)和/或对于本公开所属领域技术人员将显而易见的各种其他处理部件。机箱302还可以容纳上文讨论的多个初始化子系统中的另一个初始化子系统,在所示实施方案中,所述另一个初始化子系统由耦合到SCP子系统304和中央处理系统306的基本输入/输出系统(BIOS)子系统308提供,并且本公开所属领域技术人员将认为所述另一个初始化子系统由固件提供,所述固件被配置为在启动过程(例如,通电启动操作)或本领域中已知的其他初始化过程期间为计算系统300执行硬件初始化,以及为操作系统和/或由计算系统300提供的其他应用/程序执行运行时服务。
此外,虽然被描述为BIOS子系统,但是本公开所属领域技术人员将认识到,BIOS子系统308可以用通用可扩展固件接口(UEFI)子系统替换,本公开所属领域技术人员将认识到,所述UEFI子系统定义了计算系统300中的操作系统与固件之间的软件接口,并且提供所述系统来替代BIOS子系统(同时支持旧BIOS服务)。更进一步地,虽然该初始化子系统被示出和描述为BIOS子系统,但是本公开所属领域技术人员将理解,初始化子系统可以由被配置为与如下讨论类似地执行初始化操作的各种其他子系统提供,同时也仍然在本公开的范围内。
在所示实施方案中,机箱302还可以容纳协调的初始化子系统,在所示实施方案中,所述协调的初始化子系统由耦合到SCP子系统304和BIOS子系统308的底板管理控制器(BMC)子系统310提供。在实施方案中,BMC子系统310可以由上文参考图1讨论的IHS 100提供和/或可以包括IHS 100的一些或全部部件。在具体示例中,虽然BMC子系统310可以由集成的
Figure BDA0004136896650000081
远程访问控制器(iDRAC)子系统提供,所述iDRAC子系统可以包括在由美国德克萨斯州朗德罗克市的/>
Figure BDA0004136896650000082
公司提供的服务器装置中,但是本公开所属领域技术人员将认识到,各种其他BMC子系统也将落入本公开的范围内。本公开所属领域技术人员将理解,BMC子系统310可以被配置为管理计算系统300中的系统管理软件与计算系统300中的硬件之间的接口,以及执行下文讨论的协调的初始化功能。然而,虽然协调的初始化子系统被示出和描述为BMC子系统,但是本公开所属领域技术人员将理解,协调的初始化子系统可以由被配置为与如下讨论类似地执行协调的初始化操作的各种其他子系统提供,同时也仍然在本公开的范围内。
机箱302还可以容纳一个或多个输入/输出(I/O)装置312(或为其提供耦合),所述一个或多个I/O装置耦合到SCP子系统304。因此,本公开所属领域技术人员将认识到,I/O装置312可以容纳在机箱302中并连接到内部连接器(例如,在机箱302中的母板上),或者可以提供在机箱302外部并连接到外部连接器(例如,在机箱302的外表面上)。如图3所示,I/O装置312可以包括一个或多个外围部件互连快速(PCIe)装置312a(作为I/O装置312或对其他I/O装置的补充)。例如,PCIe装置312a可以包括NVMe存储装置,所述NVMe存储装置容纳在机箱302中(即,并且连接到机箱302中的母板上的内部连接器),或者在机箱302外部(即,并且连接到机箱302的外表面上的外部连接器)。然而,虽然已经描述了特定的I/O装置和/或PCI装置,但是本公开所属领域技术人员将认识到,多种其他I/O装置也将落在本公开的范围内。
机箱302还可以容纳耦合到BIOS子系统308和BMC子系统310中的每一者的一个或多个第一部件314,以及耦合到第一部件314中的至少一者的一个或多个第二部件316。在下文提供的具体示例中,第一部件314可以包括复杂可编程逻辑装置(CPLD)和电源系统,而第二部件316可以包括显示装置(例如,设置在服务器装置机箱上的液晶显示器(LCD))、风扇装置以及PCIe交换机装置。然而,本公开所属领域技术人员将认识到,第一部件314和第二部件316可以包括本领域已知的各种计算系统部件中的任一种。虽然已经示出了具体的计算系统300,但是本公开所属领域技术人员将认识到,计算系统(或根据本公开的教导以类似于下文针对计算系统300所描述的方式的方式操作的其他装置)可以包括各种部件和/或部件配置,以用于提供常规的计算系统功能以及下文讨论的功能,同时也仍然在本公开的范围内。
现在参考图4,示出了SCP子系统400的实施方案,所述SCP子系统可以提供上文参考图3讨论的SCP子系统304。因此,SCP子系统400可以由上文参考图1讨论的IHS 100提供和/或可以包括IHS 100的一些或所有部件,并且在具体示例中,可以提供为SCP卡,可以集成到母板中,或者可以提供为单独/共母板电路板。然而,尽管被示出和讨论为以不同方式提供在计算系统400中,但是本公开所属领域的技术人员将认识到,下文讨论的SCP子系统400的功能可以通过被配置为与下文讨论的SCP子系统400类似地操作的其他装置提供。在所示实施方案中,SCP子系统400包括机箱402(例如,电路板),所述机箱支持SCP子系统400的部件,下文仅说明其中一些部件。例如,机箱402可以支持SCP处理系统,所述SCP处理系统包括一个或多个SCP处理器(未示出,但可以包括上文参考图1讨论的处理器102)和SCP存储器系统(未示出,但可以包括上文参考图1讨论的存储器114),所述SCP存储器系统耦合到SCP处理系统并且包括指令,所述指令在由SCP处理系统执行时,使SCP处理系统提供SCP引擎404,所述SCP引擎被配置为执行下文讨论的SCP引擎和/或SCP子系统的功能。
机箱402还可以支持存储系统(未示出,但可以包括上文参考图1讨论的存储装置108、上文讨论的SCP存储器系统等),所述存储系统耦合到SCP引擎404(例如,经由存储系统与SCP处理器之间的耦合),并且可以包括一个或多个SCP数据库406,所述SCP数据库被配置为存储下文讨论的SCP引擎404所利用的任何信息。机箱402还可以支持通信系统408,所述通信系统耦合到SCP引擎404(例如,经由通信系统408与SCP处理器之间的耦合)并且可以由网络接口控制器(NIC)、无线通信系统(例如,
Figure BDA0004136896650000101
近场通信(NFC)部件、WiFi部件等)和/或对于本公开所属领域的技术人员将显而易见的任何其他通信部件提供。因此,通信系统408可以包括SCP子系统400与网络204、中央处理子系统306、BIOS子系统308、BMC子系统310、I/O装置312和/或与计算系统202a/300一起使用的任何其他部件之间的下文讨论的任何连接。然而,虽然已经示出和描述了具体的SCP子系统400,但是本公开所属领域的技术人员将认识到,SCP子系统(或根据本公开的教导以类似于下文针对SCP子系统400描述的方式的方式操作的其他装置)可以包括多种部件和/或部件配置以用于提供下文讨论的功能,同时也仍然在本公开的范围内。
现在参考图5,示出了BMC子系统500的实施方案,所述BMC子系统可以提供上文参考图3讨论的BMC子系统310。因此,BMC子系统500可以由上文参考图1讨论的IHS 100提供和/或可以包括IHS 100的一些或所有部件,并且在具体示例中,可以被提供为
Figure BDA0004136896650000102
子系统和/或对于本公开所属领域技术人员将显而易见的其他BMC子系统。然而,虽然被示出和讨论为由BMC子系统提供,但是本公开所属领域的技术人员将认识到,下文讨论的BMC子系统500的功能可以通过被配置为与下文讨论的BMC子系统500类似地操作的其他装置提供。在所示实施方案中,BMC子系统500包括机箱502(例如,电路板),所述机箱支持BMC子系统500的部件,下文仅说明其中一些部件。例如,机箱502可以支持BMC处理系统,所述BMC处理系统包括一个或多个BMC处理器(未示出,但可以包括上文参考图1讨论的处理器102)和BMC存储器系统(未示出,但可以包括上文参考图1讨论的存储器114),所述BMC存储器系统耦合到BMC处理系统并且包括指令,所述指令在由BMC处理系统执行时,使BMC处理系统提供BMC引擎504,所述BMC引擎被配置为执行下文讨论的BMC引擎和/或BMC子系统的功能。
机箱502还可以支持存储系统(未示出,但可以包括上文参考图1讨论的存储装置108、上文讨论的SCP存储器系统等),所述存储系统耦合到BMC引擎504(例如,经由存储系统与SCP处理器之间的耦合),并且可以包括一个或多个BMC数据库506,所述BMC数据库被配置为存储下文讨论的BMC引擎504所利用的任何信息。机箱502还可以支持通信系统508,所述通信系统耦合到BMC引擎504(例如,经由通信系统508与BMC处理器之间的耦合)并且可以由网络接口控制器(NIC)、无线通信系统(例如,
Figure BDA0004136896650000111
近场通信(NFC)部件、WiFi部件等)和/或对于本公开所属领域的技术人员将显而易见的任何其他通信部件提供。因此,通信系统508可以包括BMC子系统500与网络204、SCP子系统304、BIOS子系统308和/或计算系统300中的任何其他部件之间的任何连接。然而,虽然已经示出和描述了具体的BMC子系统500,但是本公开所属领域的技术人员将认识到,BMC子系统(或根据本公开的教导以类似于下文针对BMC子系统500描述的方式的方式操作的其他装置)可以包括多种部件和/或部件配置以用于提供下文讨论的功能,同时也仍然在本公开的范围内。
现在参考图6,示出了用于协调计算系统中的多个子系统的初始化的方法600的实施方案。如下所讨论的,本公开的系统和方法以协调的方式提供计算系统中的多个初始化子系统的初始化,使得由一个初始化子系统执行并且取决于由另一个初始化子系统执行的任何第二初始化操作的任何第一初始化操作可以暂停,直到那些第二初始化操作完成为止,从而允许具有相依初始化操作的初始化子系统的并行初始化。例如,本公开的协调的初始化系统可以包括计算系统,所述计算系统具有耦合到协调的初始化子系统的第一初始化子系统和第二初始化子系统。协调的初始化子系统接收与由相应的第一初始化子系统和第二初始化子系统执行的相应的第一初始化子系统操作和第二初始化子系统操作相关联的第一初始化进度信息和第二初始化进度信息。使用标识第一初始化操作与第二初始化操作之间的相依性的协调的初始化数据库,协调的初始化子系统确定第一初始化进度信息标识将由第一初始化子系统执行并且取决于第二初始化操作的第一初始化操作,所述第二初始化操作由第二初始化进度信息标识且尚未被第二初始化子系统执行;并且作为响应,使第一初始化子系统暂停第一初始化子系统操作,直到第二初始化操作已经执行为止。因此,相对于具有多个初始化子系统的常规计算系统,具有多个初始化子系统的计算系统的初始化时间可以减少。
方法600始于框602,其中协调的初始化子系统从第一初始化子系统接收第一初始化进度信息。在实施方案中,在框602处或之前,可以向计算系统202a/300提供初始化命令以开始计算系统202a/300的初始化。例如,计算系统202a/300的用户可以提供通电命令(例如,经由计算系统202a/300的电源按钮的致动、经由远程通电命令等)、重置命令、重启命令和/或本公开所属领域技术人员将认为开始计算系统的初始化过程的其他初始化命令。在下文讨论的示例中,提供给计算系统202a/300的初始化命令被配置为使SCP子系统304开始SCP子系统初始化操作,以便将SCP子系统配置为执行SCP子系统运行时操作,并使BIOS子系统308开始BIOS子系统初始化操作以便将计算系统202a/300配置为执行计算系统运行时操作。然而,虽然下面描述了两个具体的初始化子系统,但是本公开所属领域技术人员将理解,任何数量的多个初始化子系统都可以响应于提供给计算系统202a/300的初始化命令而开始初始化操作,同时仍然也在本公开的范围内。
因此,在框602的实施方案中,SCP子系统304/400中的SCP引擎404可以执行SCP子系统初始化操作,所述SCP子系统初始化操作在本文被进一步详细描述,并且可以包括例如:将远程启动装置映射到BIOS子系统308;将其他远程装置(例如,图形处理单元(GPU))映射到计算系统中的PCIe总线,使得它们表现为可以在PCIe扫描中被BIOS子系统308检测到的本地装置;和/或对于本公开所属领域技术人员将显而易见的各种其他SCP子系统初始化操作。参考图7A,SCP子系统304/400中的SCP引擎404可以被配置为执行SCP子系统初始化进度报告操作700,所述操作可以包括生成与由SCP子系统304/400执行的SCP子系统初始化操作相关联的SCP子系统初始化进度信息并经由其通信系统408将所述SCP子系统初始化进度信息传输到BMC子系统310。
在实施方案中,SCP子系统304/400在框602处传输的SCP子系统初始化进度信息可以标识SCP子系统304/400已经完成的SCP子系统初始化操作。因此,SCP子系统304/400中的SCP引擎404可以被配置为执行SCP子系统初始化进度报告操作700并且在每次特定的SCP子系统初始化操作已经完成时传输SCP子系统初始化进度信息。在具体示例中,SCP子系统初始化操作可以包括多个SCP子系统启动操作,并且SCP数据库406可以存储与那些SCP子系统启动操作中的每一者相关联的对应SCP子系统启动操作进度代码,其中每个SCP子系统启动操作进度代码被配置为标识其相关联的SCP子系统启动操作,如下文进一步详细讨论的。
这样,SCP子系统304/400中的SCP引擎404可以完成远程启动装置到BIOS子系统308的映射,并且作为响应,标识SCP数据库406中远程启动装置映射的SCP子系统启动操作进度代码,并将该SCP子系统启动操作进度代码传输到BMC子系统310,作为SCP子系统初始化进度报告操作700的一部分。类似地,SCP子系统204/400中的SCP引擎404可以完成将其他远程装置(例如,图形处理单元(GPU))映射到计算系统中的PCIe总线,使得所述其他远程装置表现为可以在PCIe扫描中被BIOS子系统308检测到的本地装置,并且作为响应,标识SCP数据库406中远程装置/PCIe总线映射的SCP子系统启动操作进度代码,并将该SCP子系统启动操作进度代码传输到BMC子系统310,作为SCP子系统初始化进度报告操作700的一部分。因此,本公开所属领域技术人员将理解,可以在SCP子系统304的整个初始化过程中执行框602以在完成特定SCP子系统初始化操作时周期性地传输SCP子系统初始化进度信息。
方法600然后进行到框604,其中协调的初始化子系统从第二初始化子系统接收第二初始化进度信息。在实施方案中,在框604处,BIOS子系统308可以执行BIOS子系统初始化操作,所述BIOS子系统初始化操作可以包括下文参考图7E讨论的BIOS操作,和/或本公开所属领域技术人员将认识到的各种BIOS初始化操作提供计算系统202a/300的初始化,所述各种BIOS初始化操作中的至少一者可能取决于由SCP子系统304/400执行的SCP子系统初始化操作的完成。参考图7B,BIOS子系统308可以被配置为执行BIOS子系统初始化进度报告操作702,所述BIOS子系统初始化进度报告操作可以包括生成与由BIOS子系统308执行的BIOS子系统初始化操作相关联的BIOS子系统初始化进度信息并将所述BIOS子系统初始化进度信息传输到BMC子系统310。
在实施方案中,在框604处由BIOS子系统308传输的BIOS子系统初始化进度信息可以标识即将由BIOS子系统308执行的BIOS子系统初始化操作。因此,BIOS子系统308可以被配置为执行BIOS子系统初始化进度报告操作702并且在每次BIOS子系统准备好执行特定的BIOS子系统初始化操作时传输BIOS子系统初始化进度信息。在具体示例中,BIOS子系统初始化操作可以包括多个BIOS子系统启动操作,并且BIOS子系统308可以存储与那些BIOS子系统启动操作中的每一者相关联的对应BIOS子系统启动操作进度代码,其中每个BIOS子系统启动操作进度代码被配置为标识其相关联的BIOS子系统启动操作,如下文进一步详细讨论的。因此,BIOS子系统308可以完成任何BIOS子系统初始化操作,并且作为响应,标识用于该BIOS子系统初始化操作的BIOS子系统启动操作进度代码,并将该BIOS子系统启动操作进度代码传输到BMC子系统310,作为BIOS子系统初始化进度报告操作702的一部分。因此,本公开所属领域技术人员将理解,可以在BIOS子系统308的整个初始化过程中执行框604,以在BIOS子系统308准备好执行任何特定BIOS子系统初始化操作时周期性地传输BIOS子系统初始化进度信息。
参考图7C,在框602和604处,BMC子系统310中的BMC引擎504可以执行初始化进度接收操作704,以便根据框602接收由SCP子系统304传输的SCP子系统初始化进度信息,并且根据框604接收由BIOS子系统308传输的BIOS子系统初始化进度信息。因此,本公开所属领域技术人员将认识到,当SCP子系统304和BIOS子系统308并行执行它们相应的初始化操作时,可以同时执行框602和604,使得BMC子系统310接收初始化进度信息(例如,在上文提供的具体示例中讨论的SCP启动进度代码和BIOS启动过程代码)作为那些相应的初始化操作进度。此外,虽然为了便于讨论,本文仅描述了两个初始化子系统,但本公开所属领域技术人员将理解,可以如本文所述并行初始化额外的初始化子系统,同时也仍然在本公开的范围内。
方法600然后进行到决策框606,其中确定第一初始化操作是否取决于未完成的第二初始化操作。在实施方案中,在决策框606处,协调的初始化子系统可以操作以确定计算系统202a/300中的初始化子系统中的一者准备好执行的第一初始化操作是否取决于初始化子系统中的另一个初始化子系统尚未完成的第二初始化操作。例如,参考图7D,BMC子系统310/500中的BMC引擎504可以执行初始化操作相依性确定操作706以访问BMC数据库506,以确定BIOS子系统308报告了其即将在框602处执行的BIOS子系统初始化操作是否取决于SCP子系统304尚未报告其已经完成的SCP子系统初始化操作。
例如,参考图7E,BMC数据库506可以包括初始化操作相依性表708,在使用上文提供的具体示例的所示示例中,所述初始化操作相依性表包括BIOS启动进度代码列708a、SCP启动进度代码列708b以及超时列708c。如本公开所属领域技术人员将理解的,初始化操作相依性表708的每一行可以标识:BIOS子系统启动操作,其可由BIOS启动进度代码列708a中的BIOS启动进度代码标识;SCP子系统启动操作,其可由SCP启动进度代码列708b中的SCP启动进度代码标识,并且该行中的BIOS子系统启动操作取决于该SCP子系统启动操作(如果存在任何相依性);以及与暂停该行中的BIOS子系统启动操作直到完成超时列708c中在该行中的SCP子系统启动操作为止相关联的超时量(下文进一步详细讨论的)。
因此,在图7E所示的具体示例中,初始化操作相依性表708中的行710包括“开始存储器测试”BIOS子系统启动操作,所述BIOS子系统启动操作可由BIOS启动进度代码列708a中的BIOS启动进度代码标识,其中“开始存储器测试”BIOS子系统启动操作不取决于SCP子系统进度代码可标识的任何SCP子系统启动操作的完成(如SCP启动进度代码列708b中的“无”所指示),并且因此在超时列708c中没有与“开始存储器测试”BIOS子系统启动操作的暂停相关联的超时量(如超时列708c中的“0”超时量所指示)。类似地,初始化操作相依性表708中的行712包括“开始PCI扫描”BIOS子系统启动操作,所述BIOS子系统启动操作可由BIOS启动进度代码列708a中的BIOS启动进度代码标识,其中“开始PCI扫描”BIOS子系统启动操作取决于可由SCP启动进度代码列708b中的SCP子系统进度代码标识的“PCI子系统和装置映射就绪”SCP子系统启动操作的完成,并且在超时列708c中具有与暂停“开始PCI扫描”BIOS子系统启动操作直到完成“PCI子系统和装置映射就绪”SCP子系统启动操作相关联的10秒超时量。
同样类似地,初始化操作相依性表708中的行714包括“BIOS设置”BIOS子系统启动操作,所述BIOS子系统启动操作可由BIOS启动进度代码列708a中的BIOS启动进度代码标识,其中“BIOS设置”BIOS子系统启动操作取决于可由SCP启动进度代码列708b中的SCP子系统进度代码标识的“SCP配置数据库就绪”SCP子系统启动操作的完成,并且在超时列708c中具有与暂停“BIOS设置”BIOS子系统启动操作直到“SCP配置数据库就绪”SCP子系统启动操作完成为止相关联的30秒超时量。同样类似地,初始化操作相依性表708中的行716包括“启动装置扫描”BIOS子系统启动操作,所述BIOS子系统启动操作可由BIOS启动进度代码列708a中的BIOS启动进度代码标识,其中“启动装置扫描”BIOS子系统启动操作取决于可由SCP启动进度代码列708b中的SCP子系统进度代码标识的“启动装置发现完成”SCP子系统启动操作的完成,并且在超时列708c中具有与暂停“启动装置扫描”BIOS子系统启动操作直到完成“启动装置发现完成”SCP子系统启动操作相关联的30秒超时量。
同样类似地,初始化操作相依性表708中的行718包括“完成后-启动操作系统(OS)”BIOS子系统启动操作,所述BIOS子系统启动操作可由BIOS启动进度代码列708a中的BIOS启动进度代码标识,其中“完成后-启动操作系统(OS)”BIOS子系统启动操作取决于可由SCP启动进度代码列708b中的SCP子系统进度代码标识的“智能NIC服务就绪”SCP子系统启动操作的完成,并且在超时列708c中具有与暂停“完成后-启动操作系统(OS)”BIOS子系统启动操作直到完成“智能NIC服务就绪”SCP子系统启动操作相关联的20秒超时量。然而,虽然上面提供了两个初始化子系统的几个特定相依性作为示例,但是本公开所属领域技术人员将理解,BMC数据库506可以如何包括标识由任意数量的初始化子系统执行的任意数量的初始化操作之间的相依性的一个或多个初始化操作相依性表,同时也仍然在本公开的范围内。此外,本公开所属领域技术人员将理解,不同的SCP子系统和/或具有不同功能/“个性”的SCP子系统可能与BIOS子系统308具有不同的相依性,并且初始化操作相依性表也可以被配置为解决那些不同的相依性。
如果在决策框606处确定第一初始化操作不取决于第二初始化操作,则方法600返回到框602。例如,参考上文讨论的BMC数据库506中的初始化操作相依性表708的示例,在决策框606处,BMC引擎504可以确定:在框602处从BIOS子系统308接收的BIOS启动进度代码标识不取决于任何SCP子系统启动操作的“开始存储器测试”BIOS子系统启动操作,或者标识“开始PCI扫描”BIOS子系统启动操作并且相依的“PCI子系统和装置映射就绪”SCP子系统启动操作的SCP启动进度代码已经在框604处从SCP子系统304接收到,或者标识“BIOS设置”BIOS子系统启动操作并且相依的“SCP配置数据库就绪”SCP子系统启动操作的SCP启动进度代码已经在框604处从SCP子系统304接收到,或者标识“启动装置扫描”BIOS子系统启动操作并且相依的“启动装置发现完成”SCP子系统启动操作的SCP启动进度代码已经在框604处从SCP子系统304接收到,或者标识“完成后-启动操作系统(OS)”BIOS子系统启动操作并且相依的“智能NIC服务就绪”SCP子系统启动操作的SCP启动进度代码已经在框604处从SCP子系统304接收到。
这样,方法600可以通过框602、604和606循环,使得只要BIOS子系统308不报告其即将执行取决于SCP子系统304尚未报告已完成的SCP子系统初始化操作的BIOS子系统初始化操作,SCP子系统304和BIOS子系统308就执行它们相应的初始化操作并且向BMC子系统310报告它们相应的初始化操作进度。因此,本公开所属领域技术人员将理解,在本文提供的具体示例中,只要SCP子系统304比BIOS子系统308“更快”地执行其SCP子系统初始化操作,SCP子系统304和BIOS子系统308中的每一者就可以并行地进行它们相应的初始化操作并且没有下文讨论的初始化操作暂停操作。此外,在一些示例中,只要BIOS子系统308不报告其即将执行取决于SCP子系统304尚未报告已经完成的SCP子系统初始化操作的BIOS子系统初始化操作,BMC子系统310就可以简单地允许BIOS子系统初始化操作进行。然而,在其他示例中,无论何时SCP子系统304报告其已经完成SCP子系统初始化操作,BMC子系统310都可以向BIOS子系统308肯定地报告其可以进行不取决于对应的SCP子系统初始化操作的任何BIOS子系统初始化操作。
如果在决策框606处确定第一初始化操作取决于第二初始化操作,则方法600可以进行到框608,其中协调的初始化子系统向第一初始化子系统发送初始化暂停通信。参考图7F,在框608的实施方案中,并且响应于确定在框604处从BIOS子系统308接收的BIOS子系统初始化操作进度信息指示BIOS子系统308即将执行取决于SCP子系统初始化操作(其中尚未在框602处从SCP子系统304接收到SCP子系统初始化操作进度信息)的BIOS子系统初始化操作,BMC子系统310/500中的BMC引擎504可以执行BIOS子系统初始化暂停通信传输操作720以生成BIOS子系统初始化暂停通信并将所述BIOS子系统初始化暂停通信传输到BIOS子系统308。
例如,参考上文讨论的BMC数据库506中的初始化操作相依性表708的示例,在决策框606处,BMC引擎504可以确定:在框602处从BIOS子系统308接收的BIOS启动进度代码标识“开始PCI扫描”BIOS子系统启动操作并且尚未在框604处从SCP子系统304接收到相依的“PCI子系统和装置映射就绪”SCP子系统启动操作的SCP启动进度代码,或者标识“BIOS设置”BIOS子系统启动操作并且尚未在框604处从SCP子系统304接收到相依的“SCP配置数据库就绪”SCP子系统启动操作的SCP启动进度代码,或者标识“启动装置扫描”BIOS子系统启动操作并且尚未在框604处从SCP子系统304接收到相依的“启动装置发现完成”SCP子系统启动操作的SCP启动进度代码,或者标识“完成后-启动操作系统(OS)”BIOS子系统启动操作并且尚未在框604处从SCP子系统304接收到相依的“智能NIC服务就绪”SCP子系统启动操作的SCP启动进度代码。
在框608的具体示例中,响应于确定在框604处从BIOS子系统308接收的BIOS子系统初始化操作进度信息指示BIOS子系统308即将执行取决于SCP子系统初始化操作(其中尚未在框602处从SCP子系统304接收到SCP子系统初始化操作进度信息)的BIOS子系统初始化操作,BMC子系统310/500中的BMC引擎504可以生成“XOFF”初始化暂停通信(例如,美国信息交换标准码(ASCII)字符XOFF命令)并将该XOFF初始化暂停通信经由串行通信链路传输到BIOS子系统308。
例如,在框608处,BMC子系统310/500中的BMC引擎504可以利用串行通信链路(例如,到耦合到BIOS子系统308的串行端口),以将“XOFF”初始化暂停通信传输到BIOS子系统308,本公开所属领域技术人员将认识到,计算系统202a/300的用户通常可使用所述串行通信链路来经由诸如键盘等输入装置来控制BIOS子系统308的操作。如本公开所属领域技术人员将理解的,在接收到“XOFF”初始化暂停通信时,BIOS子系统308将立即暂停其对BIOS子系统初始化操作的执行(即,在执行取决于SCP子系统初始化操作(其中尚未从SCP子系统304接收到SCP子系统初始化操作进度信息)的BIOS子系统初始化操作之前),并且将不会恢复执行BIOS子系统初始化操作,除非接收到“XON”初始化恢复通信,下文将进一步详细讨论。然而,虽然上文描述了用于暂停BIOS子系统初始化操作的具体技术,但是本公开所属领域技术人员将理解,用于暂停BIOS子系统初始化操作的其他技术也将落在本公开的范围内。
方法600然后进行到决策框610,其中确定第二初始化操作是否已经完成。在实施方案中,在决策框610处以及继在框608处向BIOS子系统308发送BIOS子系统初始化暂停通信之后,BMC子系统310/500中的BMC引擎504可以操作来监测来自SCP子系统304的SCP子系统初始化进度通信,所述SCP子系统初始化进度通信指示SCP子系统304已经完成了SCP子系统初始化操作,在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前,BIOS子系统308针对所述SCP子系统初始化操作暂停。继续上文提供的具体示例,在框608处,BMC子系统310/500中的BMC引擎504可以操作来监测来自SCP子系统304的SCP子系统启动进度代码,所述SCP子系统启动进度代码指示SCP子系统304已经完成了SCP子系统初始化操作,在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前,BIOS子系统308针对所述SCP子系统初始化操作暂停。
如果在决策框610处确定第二初始化操作尚未完成,则方法600进行到决策框612,其中确定是否已达到初始化暂停超时。在实施方案中,在决策框612处并且作为对来自SCP子系统304的SCP子系统初始化进度通信(所述SCP子系统初始化进度通信指示SCP子系统304已经完成了在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前BIOS子系统308暂停所针对的SCP子系统初始化操作)开始监测的一部分,BMC子系统310/500中的BMC引擎504可以访问BMC数据库506并且在初始化操作相依性表708的超时列708c中标识与在框608处发送BIOS子系统初始化暂停通信所针对的BIOS启动进度代码/SCP启动进度代码相依性相关联的超时量。此外,响应于标识该超时量,BMC子系统310/500中的BMC引擎504可以启动计时器来监测该超时量是否已到期(即,在从SCP子系统304接收到SCP子系统初始化进度通信之前,所述SCP子系统初始化进度通信指示SCP子系统304已经完成在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前BIOS系统308暂停所针对的SCP子系统初始化操作)。
因此,返回参考初始化操作相依性表708的具体示例,在框610处,BMC子系统310/500中的BMC引擎504可以标识对应于在框608处暂停BIOS子系统初始化操作所针对的“开始PCI扫描”BIOS子系统启动操作/“PCI子系统和装置映射就绪”SCP子系统启动操作相依性的10秒超时量,或者标识对应于在框608处暂停BIOS子系统初始化操作所针对的“BIOS设置”BIOS子系统启动操作/“SCP配置数据库就绪”SCP子系统启动操作相依性的30秒超时量,或者标识对应于在框608处暂停BIOS子系统初始化操作所针对的“启动装置扫描”BIOS子系统启动操作/“启动装置发现完成”SCP子系统启动操作相依性的30秒超时量,或者标识对应于在框608处暂停BIOS子系统初始化操作所针对的“完成后-启动操作系统(OS)”BIOS子系统启动操作/“智能NIC服务就绪”SCP子系统启动操作相依性的20秒超时量。因此,在框610处,BMC子系统310/500中的BMC引擎504可以确定BIOS子系统初始化操作/SCP子系统初始化操作相依性的超时量是否已经期满。
如果在决策框612处确定尚未达到初始化暂停超时,则方法600可以返回到决策框610。因此,方法600可以在BIOS子系统初始化操作在框608暂停之后通过决策框610和612循环,以便确定SCP子系统初始化操作(在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前,BIOS子系统308针对所述SCP子系统初始化操作暂停)是否在与其对应的BIOS子系统初始化操作/SCP子系统初始化操作相依性相依联的超时量之前完成。
如果在决策框612处确定已经达到初始化暂停超时,则方法600可以进行到框614,其中协调的初始化子系统执行初始化故障操作。在实施方案中,在框614处并且响应于确定在SCP子系统初始化操作(在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前BIOS子系统308针对所述SCP子系统初始化操作暂停)完成之前已经达到初始化暂停超时,BMC子系统310/500中的BMC引擎504可以执行初始化故障操作,例如,诸如重置SCP子系统304以便重新启动其对SCP子系统初始化操作的执行、排除SCP子系统304可能的网络连接问题、向SCP子系统/计算系统管理员发送警报、向SCP子系统/计算系统管理员报告SCP子系统诊断信息、和/或执行对于本公开所属领域技术人员将显而易见的各种其他初始化故障操作中的任一者。
此外,在一些示例中,响应于确定在SCP子系统初始化操作(在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前,BIOS子系统308针对所述SCP子系统初始化操作暂停)完成之前已经达到初始化暂停超时,BMC子系统310/500中的BMC引擎504可以阻止BIOS子系统308恢复BIOS子系统初始化操作,以阻止计算系统202a/300的初始化。然而,在其他示例中,响应于确定在SCP子系统初始化操作(在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前,BIOS子系统308针对所述SCP子系统初始化操作暂停)完成之前已经达到初始化暂停超时,BMC子系统310/500中的BMC引擎504可以允许BIOS子系统308恢复BIOS子系统初始化操作,以允许计算系统202a/300的初始化,本公开所属领域技术人员将认识到这可以允许进行计算系统202a/300的运行时操作,而无需SCP子系统304的一些或全部功能。然而,虽然已经描述了初始化故障操作的几个具体示例,但是本公开所属领域技术人员将理解,如果SCP子系统304没有完成SCP子系统初始化操作(BIOS子系统初始化操作取决于所述SCP子系统初始化操作),则可以执行多种动作,同时仍然也在本公开的范围内。
如果在决策框610处确定第二初始化操作已经完成,则方法600可以进行到框616,其中协调的初始化子系统向第一初始化子系统发送初始化恢复通信。参考图7G,在决策框610处,SCP子系统304/400中的SCP引擎404可以完成在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前BIOS子系统308暂停所针对的SCP子系统初始化操作,并且作为响应,可以执行SCP子系统初始化操作完成通信操作722,所述通信操作包括以与上文关于框604讨论的基本相同的方式将SCP子系统初始化操作进度通信传输到BMC子系统310,其中该SCP子系统初始化操作进度通信指示SCP子系统304已经完成了在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前BIOS子系统308暂停所针对的SCP子系统初始化操作。
参考图7H,在框616的实施方案中并且响应于确定已经从SCP子系统304接收到SCP子系统初始化进度通信(所述SCP子系统初始化进度通信指示SCP子系统304已经完成了在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前BIOS子系统308暂停所针对的SCP子系统初始化操作),BMC子系统310/500中的BMC引擎504可以执行BIOS子系统初始化恢复通信传输操作724以生成BIOS子系统初始化恢复通信并将所述BIOS子系统初始化恢复通信传输到BIOS子系统308。
例如,参考上文讨论的BMC数据库506中的初始化操作相依性表708的示例,在决策框606处,BMC引擎504可以确定从SCP子系统304接收到的SCP启动进度代码标识“PCI子系统和装置映射就绪”SCP子系统启动操作已经完成,或者标识“SCP配置数据库就绪”SCP子系统启动操作已经完成,或者标识“启动装置发现完成”SCP子系统启动操作已经完成,或者标识“智能NIC服务就绪”SCP子系统启动操作已经完成。在框616的具体示例中,响应于确定SCP子系统304已经完成在执行取决于该SCP子系统初始化操作的BIOS子系统初始化操作之前BIOS子系统308暂停所针对的所述SCP子系统初始化操作,BMC子系统310/500中的BMC引擎504可以生成“XON”初始化恢复通信(例如,ASCII字符XON命令)并经由串行通信链路将该XON初始化恢复通信传输到BIOS子系统308。
类似地,如上文所讨论的,在框608处,BMC子系统310/500中的BMC引擎504可以利用串行通信链路(例如,到耦合到BIOS子系统308的串行端口),以将“XON”初始化恢复通信传输到BIOS子系统308,本公开所属领域技术人员将认识到,计算系统202a/300的用户通常可使用所述串行通信链路来经由诸如键盘等输入装置来控制BIOS子系统308的操作。如本公开所属领域技术人员所理解的,在接收到“XON”初始化恢复通信时,BIOS子系统308将立即恢复其对BIOS子系统初始化操作的执行(即,执行取决于在决策框610处从SCP子系统304接收SCP子系统初始化操作进度信息所针对的SCP子系统初始化操作的BIOS子系统初始化操作)。然而,虽然上文描述了用于恢复BIOS子系统初始化操作的具体技术,但是本公开所属领域技术人员将理解,用于恢复BIOS子系统初始化操作的其他技术也将落在本公开的范围内。
方法600然后返回到框602。因此,方法600可以循环以允许SCP子系统304和BIOS子系统308并行初始化,同时在那些BIOS子系统初始化操作中的任一者即将被执行并取决于SCP子系统304尚未执行的SCP子系统初始化操作的情况下,使BIOS子系统308暂停执行BIOS子系统初始化操作,并且一旦SCP子系统304已经执行了该SCP子系统初始化操作,BIOS子系统308就立即恢复BIOS子系统初始化操作。
因此,已经描述了如下系统和方法:以协调的方式提供服务器装置中的SCP子系统和BIOS子系统的初始化,使得由BIOS子系统执行并且取决于由SCP子系统执行的任何SCP子系统初始化操作的任何BIOS子系统初始化操作可以暂停,直到那些SCP子系统初始化操作完成为止,从而允许具有相依的初始化操作的SCP子系统和BIOS子系统的并行初始化。例如,本公开的协调的初始化系统可以包括服务器装置,所述服务器装置具有耦合到BMC子系统的SCP子系统和BIOS子系统。BMC子系统接收与由相应的SCP子系统和BIOS子系统执行的相应的SCP子系统初始化操作和BIOS子系统初始化操作相关联的SCP子系统初始化进度信息和BIOS子系统初始化进度信息。使用标识SCP子系统初始化操作与BIOS子系统初始化操作之间的相依性的BMC数据库,BMC子系统确定BIOS子系统初始化进度信息标识将由BIOS子系统执行并取决于SCP子系统初始化操作的BIOS子系统初始化操作,所述SCP子系统初始化操作由SCP子系统初始化进度信息标识并且尚未被SCP子系统执行,并且作为响应,使BIOS子系统暂停BIOS子系统初始化操作,直到SCP子系统初始化操作已经执行为止。因此,相对于具有SCP子系统和BIOS子系统的常规服务器装置,具有SCP子系统和BIOS子系统的服务器装置的初始化时间可以减少。
尽管已经示出和描述了说明性实施方案,但是在前述公开中设想了广泛的修改、改变和替换,并且在一些情况下,可以采用实施方案的一些特征而不对应地使用其他特征。因此,适当的是,广泛地并以与本文公开的实施方案的范围一致的方式解释随附权利要求。

Claims (20)

1.一种协调的初始化系统,其包括:
计算系统;
第一初始化子系统,所述第一初始化子系统包括在所述计算系统中;
第二初始化子系统,所述第二初始化子系统包括在所述计算系统中;以及
协调的初始化子系统,所述协调的初始化子系统包括在所述计算系统中并且耦合到所述第一初始化子系统和所述第二初始化子系统中的每一者,其中所述协调的初始化子系统被配置为:
在向所述计算系统提供初始化命令之后,从所述第一初始化子系统接收与由所述第一初始化子系统执行的第一初始化子系统操作相关联的第一初始化进度信息;
在向所述计算系统提供所述初始化命令之后,从所述第二初始化子系统接收与由所述第二初始化子系统执行的第二初始化子系统操作相关联的第二初始化进度信息;
使用标识所述第一初始化子系统操作与所述第二初始化操作之间的相依性的协调的初始化数据库,来确定所述第一初始化进度信息标识将由所述第一初始化子系统执行并取决于第二初始化操作的第一初始化操作,所述第二初始化操作由所述第二初始化进度信息标识并且尚未被所述第二初始化子系统执行;以及
响应于确定将由所述第一初始化子系统执行的所述第一初始化操作是取决于尚未被所述第二初始化子系统执行的所述第二初始化操作,使所述第一初始化子系统暂停所述第一初始化子系统操作,直到所述第二初始化操作已经执行为止。
2.如权利要求1所述的系统,其中所述第一初始化子系统是基本输入/输出系统(BIOS)子系统。
3.如权利要求1所述的系统,其中第二初始化子系统是系统控制处理器(SCP)子系统。
4.如权利要求1所述的系统,其中所述协调的初始化子系统是底板管理控制器(BMC)子系统。
5.如权利要求1所述的系统,其中所述使所述第一初始化子系统暂停所述第一初始子系统操作直到所述第二初始化操作已经执行为止包括:
经由串行连接向所述第一初始化子系统传输XOFF命令,所述XOFF命令被配置为使所述第一初始化子系统暂停所述第一初始化子系统操作,使得所述第一初始化子系统不执行所述第一初始化操作;
从所述第二初始化子系统接收与由所述第二初始化子系统执行的所述第二初始化子系统操作相关联的第三初始化进度信息;
确定所述第三初始化进度信息标识所述第二初始化子系统已经执行了所述第二初始化操作;以及
响应于确定所述第二初始化子系统已经执行了所述第二初始化操作,经由所述串行连接向所述第一初始化子系统传输XON命令,所述XON命令被配置为使所述第一初始化子系统恢复所述第一初始化子系统操作,使得所述第一初始化子系统执行所述第一初始化操作。
6.如权利要求1所述的系统,其中所述协调的初始化子系统被配置为:
从所述第一初始化子系统接收与由所述第一初始化子系统执行的第一初始化子系统操作相关联的第三初始化进度信息;
从所述第二初始化子系统接收与由所述第二初始化子系统执行的第二初始化子系统操作相关联的第四初始化进度信息;
使用标识所述第一初始化子系统操作与所述第二初始化操作之间的相依性的所述协调的初始化数据库,来确定所述第三初始化进度信息标识将由所述第一初始化子系统执行并取决于第四初始化操作的第三初始化操作,所述第四初始化操作由所述第四初始化进度信息标识并且尚未被所述第二初始化子系统执行;
响应于确定将由所述第一初始化子系统执行的所述第三初始化操作是取决于尚未被所述第二初始化子系统执行的所述第四初始化操作,使所述第一初始化子系统暂停所述第三初始化子系统操作;
确定在使所述第一初始化子系统暂停所述第三初始化子系统操作之后的一段时间内所述第二初始化子系统未执行所述第四初始化操作;并且
响应于确定所述第二初始化子系统在所述一段时间内未执行所述第四初始化操作,执行第二初始化子系统故障操作。
7.一种信息处置系统,其包括:
处理系统;以及
存储器系统,所述存储器系统耦合到所述处理系统并且包括指令,所述指令在由所述处理系统执行时,使所述处理系统提供协调的初始化引擎,所述协调的初始化引擎被配置为:
在向计算系统提供初始化命令之后,从所述计算系统中的第一初始化子系统接收与由所述第一初始化子系统执行的第一初始化子系统操作相关联的第一初始化进度信息;
在向所述计算系统提供所述初始化命令之后,从所述计算系统中的第二初始化子系统接收与由所述第二初始化子系统执行的第二初始化子系统操作相关联的第二初始化进度信息;
使用标识所述第一初始化子系统操作与所述第二初始化操作之间的相依性的协调的初始化数据库,来确定所述第一初始化进度信息标识将由所述第一初始化子系统执行并取决于第二初始化操作的第一初始化操作,所述第二初始化操作由所述第二初始化进度信息标识并且尚未被所述第二初始化子系统执行;以及
响应于确定将由所述第一初始化子系统执行的所述第一初始化操作是取决于尚未被所述第二初始化子系统执行的所述第二初始化操作,使所述第一初始化子系统暂停所述第一初始化子系统操作,直到所述第二初始化操作已经执行为止。
8.如权利要求7所述IHS,其中所述第一初始化子系统是基本输入/输出系统(BIOS)子系统。
9.如权利要求7所述的IHS,其中第二初始化子系统是系统控制处理器(SCP)子系统。
10.如权利要求7所述的IHS,其中所述协调的初始化引擎被配置为:
执行至少一个底板管理控制器(BMC)操作。
11.如权利要求7所述的IHS,其中所述使所述第一初始化子系统暂停所述第一初始化子系统操作直到所述第二初始化操作已经执行为止包括:
经由串行连接向所述第一初始化子系统传输XOFF命令,所述XOFF命令被配置为使所述第一初始化子系统暂停所述第一初始化子系统操作,使得所述第一初始化子系统不执行所述第一初始化操作;
从所述第二初始化子系统接收与由所述第二初始化子系统执行的所述第二初始化子系统操作相关联的第三初始化进度信息;
确定所述第三初始化进度信息标识所述第二初始化子系统已经执行了所述第二初始化操作;以及
响应于确定所述第二初始化子系统已经执行了所述第二初始化操作,经由所述串行连接向所述第一初始化子系统传输XON命令,所述XON命令被配置为使所述第一初始化子系统恢复所述第一初始化子系统操作,使得所述第一初始化子系统执行所述第一初始化操作。
12.如权利要求7所述的IHS,其中所述协调的初始化引擎被配置为:
从所述第一初始化子系统接收与由所述第一初始化子系统执行的第一初始化子系统操作相关联的第三初始化进度信息;
从所述第二初始化子系统接收与由所述第二初始化子系统执行的第二初始化子系统操作相关联的第四初始化进度信息;
使用标识所述第一初始化子系统操作与所述第二初始化操作之间的相依性的所述协调的初始化数据库,来确定所述第三初始化进度信息标识将由所述第一初始化子系统执行并取决于第四初始化操作的第三初始化操作,所述第四初始化操作由所述第四初始化进度信息标识并且尚未被所述第二初始化子系统执行;
响应于确定将由所述第一初始化子系统执行的所述第三初始化操作是取决于尚未被所述第二初始化子系统执行的所述第四初始化操作,使所述第一初始化子系统暂停所述第三初始化子系统操作;
确定在使所述第一初始化子系统暂停所述第三初始化子系统操作之后的一段时间内所述第二初始化子系统未执行所述第四初始化操作;并且
响应于确定所述第二初始化子系统在所述一段时间内未执行所述第四初始化操作,执行第二初始化子系统故障操作。
13.如权利要求7所述的IHS,其中所述第一初始化进度信息包括至少一个第一初始化子系统启动进度代码,并且其中所述第二初始化进度信息包括至少一个第二初始化子系统启动进度代码。
14.一种用于协调计算系统中的多个子系统的初始化的方法,其包括:
在向所述计算系统提供初始化命令之后,所述计算系统中的协调的初始化子系统从所述计算系统中的第一初始化子系统接收与由所述第一初始化子系统执行的第一初始化子系统操作相关联的第一初始化进度信息;
在向所述计算系统提供所述初始化命令之后,所述协调的初始化子系统从所述计算系统中的第二初始化子系统接收与由所述第二初始化子系统执行的第二初始化子系统操作相关联的第二初始化进度信息;
所述协调的初始化子系统使用标识所述第一初始化子系统操作与所述第二初始化操作之间的相依性的协调的初始化数据库,来确定所述第一初始化进度信息标识将由所述第一初始化子系统执行并取决于第二初始化操作的第一初始化操作,所述第二初始化操作由所述第二初始化进度信息标识并且尚未被所述第二初始化子系统执行;以及
响应于确定将由所述第一初始化子系统执行的所述第一初始化操作是取决于尚未被所述第二初始化子系统执行的所述第二初始化操作,所述协调的初始化子系统使所述第一初始化子系统暂停所述第一初始化子系统操作,直到所述第二初始化操作已经执行为止。
15.如权利要求14所述的方法,其中所述第一初始化子系统是基本输入/输出系统(BIOS)子系统。
16.如权利要求14所述的方法,其中第二初始化子系统是系统控制处理器(SCP)子系统。
17.如权利要求14所述的方法,其中所述协调的初始化子系统是底板管理控制器(BMC)子系统。
18.如权利要求14所述的方法,其中所述使所述第一初始化子系统暂停所述第一初始子系统操作直到所述第二初始化操作已经执行为止包括:
所述协调的初始化子系统经由串行连接向所述第一初始化子系统传输XOFF命令,所述XOFF命令被配置为使所述第一初始化子系统暂停所述第一初始化子系统操作,使得所述第一初始化子系统不执行所述第一初始化操作;
所述协调的初始化子系统从所述第二初始化子系统接收与由所述第二初始化子系统执行的所述第二初始化子系统操作相关联的第三初始化进度信息;
所述协调的初始化子系统确定所述第三初始化进度信息标识所述第二初始化子系统已经执行了所述第二初始化操作;以及
响应于确定所述第二初始化子系统已经执行了所述第二初始化操作,所述协调的初始化子系统经由所述串行连接向所述第一初始化子系统传输XON命令,所述XON命令被配置为使所述第一初始化子系统恢复所述第一初始化子系统操作,使得所述第一初始化子系统执行所述第一初始化操作。
19.如权利要求14所述的方法,其还包括:
所述协调的初始化子系统从所述第一初始化子系统接收与由所述第一初始化子系统执行的第一初始化子系统操作相关联的第三初始化进度信息;
所述协调的初始化子系统从所述第二初始化子系统接收与由所述第二初始化子系统执行的第二初始化子系统操作相关联的第四初始化进度信息;
所述协调的初始化子系统使用标识所述第一初始化子系统操作与所述第二初始化操作之间的相依性的所述协调的初始化数据库,来确定所述第三初始化进度信息标识将由所述第一初始化子系统执行并取决于第四初始化操作的第三初始化操作,所述第四初始化操作由所述第四初始化进度信息标识并且尚未被所述第二初始化子系统执行;
响应于确定将由所述第一初始化子系统执行的所述第三初始化操作是取决于尚未被所述第二初始化子系统执行的所述第四初始化操作,所述协调的初始化子系统使所述第一初始化子系统暂停所述第三初始化子系统操作;
所述协调的初始化子系统确定在使所述第一初始化子系统暂停所述第三初始化子系统操作之后的一段时间内所述第二初始化子系统未执行所述第四初始化操作;以及
响应于确定所述第二初始化子系统在所述一段时间内未执行所述第四初始化操作,所述协调的初始化子系统执行第二初始化子系统故障操作。
20.如权利要求14所述的方法,其中所述第一初始化进度信息包括至少一个第一初始化子系统启动进度代码,并且其中所述第二初始化进度信息包括至少一个第二初始化子系统启动进度代码。
CN202180064594.0A 2020-09-24 2021-04-28 协调的初始化系统 Pending CN116368467A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/030,632 US11500649B2 (en) 2020-09-24 2020-09-24 Coordinated initialization system
US17/030,632 2020-09-24
PCT/US2021/029739 WO2022066225A1 (en) 2020-09-24 2021-04-28 Coordinated initialization system

Publications (1)

Publication Number Publication Date
CN116368467A true CN116368467A (zh) 2023-06-30

Family

ID=76012019

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202180064594.0A Pending CN116368467A (zh) 2020-09-24 2021-04-28 协调的初始化系统

Country Status (5)

Country Link
US (1) US11500649B2 (zh)
EP (1) EP4217858A1 (zh)
CN (1) CN116368467A (zh)
TW (1) TWI782614B (zh)
WO (1) WO2022066225A1 (zh)

Family Cites Families (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5933631A (en) * 1997-03-17 1999-08-03 International Business Machines Corporation Dynamic boot filesystem selection
US6145089A (en) * 1997-11-10 2000-11-07 Legato Systems, Inc. Server fail-over system
KR100250464B1 (ko) * 1997-11-25 2000-04-01 정선종 고속병렬컴퓨터의 노드 부트 방법
US6098158A (en) * 1997-12-18 2000-08-01 International Business Machines Corporation Software-enabled fast boot
US6948099B1 (en) * 1999-07-30 2005-09-20 Intel Corporation Re-loading operating systems
US7251723B2 (en) * 2001-06-19 2007-07-31 Intel Corporation Fault resilient booting for multiprocessor system using appliance server management
US20080059785A1 (en) * 2002-08-14 2008-03-06 Ti Technologies Limited Method and apparatus for shutting down a computer system
US20050220025A1 (en) * 2003-05-30 2005-10-06 Tsutomu Noguchi Flow control device
US20100235833A1 (en) * 2009-03-13 2010-09-16 Liquid Computing Corporation Methods and systems for providing secure image mobility
TWI438685B (zh) * 2010-10-28 2014-05-21 Hon Hai Prec Ind Co Ltd 通訊裝置及其韌體補丁方法
US8830228B2 (en) * 2010-12-20 2014-09-09 Microsoft Corporation Techniques for enabling remote management of servers configured with graphics processors
DE112011105853B4 (de) 2011-11-15 2024-04-25 Intel Corporation Verwaltung der Steuerung des Pufferzulaufs durch den Verbindungsstatus
TW201351133A (zh) * 2012-06-13 2013-12-16 Hon Hai Prec Ind Co Ltd 系統事件讀取方法及系統
CN103810063B (zh) * 2012-11-06 2017-05-10 浙江艺迅装饰设计工程有限公司 电脑测试系统及方法
US9329943B2 (en) * 2013-01-08 2016-05-03 Symantec Corporation Methods and systems for instant restore of system volume
US9225596B2 (en) 2013-05-02 2015-12-29 Citrix Systems, Inc. Undifferentiated service domains
US9594568B2 (en) 2013-10-08 2017-03-14 Dell Products, L.P. System and method for thermal control of an information handling system
US9965288B2 (en) * 2014-07-10 2018-05-08 Cisco Technology, Inc. Preconfiguring hardware and speeding up server discovery prior to bios boot
US10162625B2 (en) * 2015-04-14 2018-12-25 Ford Global Technologies, Llc Vehicle control storage methods and systems
CN106201563B (zh) * 2015-04-29 2020-01-03 新华三信息技术有限公司 启动参数的配置方法和装置、主板启动的方法和装置
US9846617B2 (en) * 2015-05-07 2017-12-19 Dell Products, Lp System and method for self-healing basic input/output system boot image and secure recovery
US10339316B2 (en) * 2015-07-28 2019-07-02 Crowdstrike, Inc. Integrity assurance through early loading in the boot phase
US10467015B2 (en) * 2015-09-08 2019-11-05 Dell Products, Lp Method for out of band device configuration deployment and system therefor
US10228962B2 (en) * 2015-12-09 2019-03-12 Commvault Systems, Inc. Live synchronization and management of virtual machines across computing and virtualization platforms and using live synchronization to support disaster recovery
US10387266B2 (en) * 2015-12-23 2019-08-20 Commvault Systems, Inc. Application-level live synchronization across computing platforms including synchronizing co-resident applications to disparate standby destinations and selectively synchronizing some applications and not others
TW201732625A (zh) * 2016-03-14 2017-09-16 國立清華大學 基於Saltstack之OpenStack雲端運算平台自動化部署系統以及方法
US10091904B2 (en) * 2016-07-22 2018-10-02 Intel Corporation Storage sled for data center
US20190007212A1 (en) * 2017-06-30 2019-01-03 Intel Corporation Secure unlock systems for locked devices
US10572151B2 (en) * 2017-07-10 2020-02-25 Dell Products, Lp System and method to allocate available high bandwidth memory to UEFI pool services
US10620966B2 (en) 2017-09-28 2020-04-14 Intel Corporation Method to coordinate system boot and reset flows and improve reliability, availability and serviceability (RAS) among multiple chipsets
WO2019067133A1 (en) * 2017-09-29 2019-04-04 Apple Inc. DEVICE MANAGER PROVIDING RESOURCE CONTROL AND SYNCHRONIZATION
US10503518B2 (en) * 2017-10-11 2019-12-10 Microsoft Technology Licensing, Llc Initializing hardware components using parallel driver loading and serial access granting
TWI663509B (zh) * 2017-11-16 2019-06-21 神雲科技股份有限公司 系統資訊管理方法
JP7002358B2 (ja) * 2018-02-07 2022-01-20 Necプラットフォームズ株式会社 情報処理システム、情報処理装置、情報処理装置のbios更新方法、及び情報処理装置のbios更新プログラム
US11375507B2 (en) * 2018-07-19 2022-06-28 Qualcomm Incorporated Decoupled uplink/downlink initial access
US20190073302A1 (en) * 2018-11-06 2019-03-07 Intel Corporation Ssd boot based on prioritized endurance groups
US10866623B2 (en) * 2018-11-16 2020-12-15 Dell Products L.P. Information handling system and method to detect and recover from no power/no post failures
US11144326B2 (en) 2019-02-19 2021-10-12 Cisco Technology, Inc. System and method of initiating multiple adaptors in parallel

Also Published As

Publication number Publication date
TWI782614B (zh) 2022-11-01
US11500649B2 (en) 2022-11-15
WO2022066225A1 (en) 2022-03-31
TW202213090A (zh) 2022-04-01
US20220091859A1 (en) 2022-03-24
EP4217858A1 (en) 2023-08-02

Similar Documents

Publication Publication Date Title
US9940143B2 (en) Using peripheral component interconnect express vendor-defined message (PCIe-VDM) and inter-integrated circuit (I2C) transport for network communications
US9442876B2 (en) System and method for providing network access for a processing node
US9811347B2 (en) Managing dependencies for human interface infrastructure (HII) devices
US10956170B2 (en) BIOS setting modification system
US20190056773A1 (en) Peripheral device expansion card system
US11308002B2 (en) Systems and methods for detecting expected user intervention across multiple blades during a keyboard, video, and mouse (KVM) session
US11204775B2 (en) Automated bios platform configuration system
US10996942B1 (en) System and method for graphics processing unit firmware updates
US11853803B2 (en) Workload compliance governor system
US20210157761A1 (en) Configuring hot-inserted device via management controller
US11221858B1 (en) System control processor (SCP) boot system
CN116368467A (zh) 协调的初始化系统
US8819321B2 (en) Systems and methods for providing instant-on functionality on an embedded controller
US10282212B2 (en) System and method for reducing boot time of a workload configuration on a target server
US11290321B1 (en) Expanded availability computing system
US11301259B1 (en) System control processor (SCP) cloning system
US11327852B1 (en) Live migration/high availability system
US11537705B2 (en) Device access control system
US20220171726A1 (en) Systems and methods for management controller co-processor host to variable subsystem proxy
CN117827297A (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