CN113986357A - 建立通信链路的方法、装置和存储介质 - Google Patents
建立通信链路的方法、装置和存储介质 Download PDFInfo
- Publication number
- CN113986357A CN113986357A CN202111114304.7A CN202111114304A CN113986357A CN 113986357 A CN113986357 A CN 113986357A CN 202111114304 A CN202111114304 A CN 202111114304A CN 113986357 A CN113986357 A CN 113986357A
- Authority
- CN
- China
- Prior art keywords
- bmc
- state
- bios
- communication link
- available
- 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
- 238000004891 communication Methods 0.000 title claims abstract description 51
- 238000000034 method Methods 0.000 title claims abstract description 43
- 238000004590 computer program Methods 0.000 claims description 9
- 230000002159 abnormal effect Effects 0.000 claims description 7
- 108010028984 3-isopropylmalate dehydratase Proteins 0.000 claims 6
- 230000006870 function Effects 0.000 description 21
- 230000003993 interaction Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Abstract
本申请涉及一种建立通信链路的方法、装置和存储介质。所述方法包括:同时启动运行基本输入输出系统BIOS与基板管理控制器BMC;所述BIOS获取所述BMC的状态,并判断所述BMC的状态是否为可用状态;当所述BMC的状态为可用状态时,所述BIOS建立与所述BMC之间的通信链路。采用本方法能够提升整机设备的启动速度。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种建立通信链路的方法、装置和存储介质。
背景技术
目前基于X86体系的芯片设计以及开发环境都已经趋于成熟,UEFI(UnifiedExtensible Firmware Interface,通用可扩展固件接口)的提出更是让传统的BIOS(basicinput output system,基本输入输出系统)逐渐退出了历史舞台。由于UEFI强大的扩展性,目前基于UEFI BIOS的芯片生态及市场应用也越来越广阔,围绕X86架构的处理器生态应用包括个人PC,网络交换机及数据中心应用的服务器等,这其中基于服务器的设计和使用尤为复杂,因为数据中心所用的服务器对安全性和稳定性要求远远高于个人电脑,因此基于X86体系衍生出一系列周围组件,这其中BMC(Baseboard Management Controller,基板管理控制器)正是基于服务器运行的安全角度应用而生,BMC主要用于监控服务器运行状态,并且对主板上的风扇以及设备信息等设备进行管理,起着至关重要的作用。为确保系统运行流畅和稳定,CPU与BMC之间的需要建立一条通信链路,这样才能保证CPU端运行的BIOS和OS系统可以与BMC进行信息交互,目前两者之间通信均是通过IPMI(intelligent PlatformManagement Interface,智能平台管理接口)服务
但是,由于BMC系统的运行服务太多,而且前置依赖也比较多,所以,BMC端启动IPMI服务所需要的时间需要很长,这就导致了若CPU的BIOS启动时间较快,就必定会出现BIOS需等待BMC的IPMI服务准备完成,二者方可建立链路通道,在BIOS与BMC需要信息交互的情况下,此种做法无可厚非,但是部分机型BIOS阶段并无与BMC进行信息交互的需求,比如大部分的网络交换机,由于功能明确,系统结构较为单一,不需要BIOS与BMC交互信息,仅需要BIOS与BMC建立通道,并安装相关的服务以供OS交互使用即可,在这种情况下,如果还需要原始的BIOS无休止等待BMC服务的方案,势必造成BIOS启动时间太长,整机设备的启动速度也会加长,不利于用户体验。
目前几乎所有厂商的启动方案,均是采用CPU和BMC先后上电,或者CPU的BIOS无限等待BMC的方案,这种方案具有通用性强的特点,但是针对部分产品,比如智能网卡,网络交换机等功能单一,针对性强的产品,有时候BIOS仅需构建链路通路即可,无需进行数据交互,这时仍旧采用原始的方案,必定会造成整机设备启动过慢的问题。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提升设备的开机速度的建立通信链路的方法、装置和存储介质。
一方面,提供一种建立通信链路的方法,所述方法包括:
同时启动运行基本输入输出系统BIOS与基板管理控制器BMC;
所述BIOS获取所述BMC的状态,并判断所述BMC的状态是否为可用状态;
当所述BMC的状态为可用状态时,所述BIOS建立与所述BMC之间的通信链路。
在其中一个实施例中,所述方法还包括:
在PEI阶段,所述BIOS使用IPMI服务获取所述BMC的状态;
若获取成功,则将所述BMC的状态标记为可用状态,建立与所述BMC之间的通信链路;
若获取失败,则根据预定的时间间隔重复执行获取操作,若在达到预定的获取次数后仍未成功获取所述BMC的状态,则将所述BMC的状态标记为不可用状态;
所述BIOS将所述BMC的状态存储至HOB中。
在其中一个实施例中,所述方法还包括:
在DXE阶段,所述BIOS从所述HOB中读取所述BMC的状态标志位,检查所述BMC的状态是否可用,若不可用,则创建定时器函数,所述定时器函数定时与所述BMC通信,获取所述BMC的状态。
在其中一个实施例中,所述方法还包括:
所述BIOS与所述BMC建立通信链路之后,所述BIOS向所述BMC发送IPMI命令;
所述BIOS判断所述IPMI命令是否发送成功,如果是,则生成指示所述IPMI命令发送成功的第一标识信息。
在其中一个实施例中,所述方法还包括:
在显示界面显示所述第一标识信息,所述第一标识信息为预设第一数值。
在其中一个实施例中,所述方法还包括:
所述BIOS与所述BMC建立通信链路之后,再次获取所述BIOS与所述BMC之间的IPMI链路的状态,得到第二状态值;若所述第二状态值为异常,则执行重启命令进行设备重启。
另一方面,提供了一种建立通信链路的装置,应用于BIOS中,所述装置包括:
启动模块,用于在启动基板管理控制器BMC的同时,启动运行基本输入输出系统BIOS;
获取模块,用于获取所述BMC的状态,并判断所述BMC的状态是否为可用状态;
建立模块,用于当所述BMC的状态为可用状态时,建立与所述BMC之间的通信链路。
在其中一个实施例中,所述获取模块还用于:
在PEI阶段,使用IPMI服务获取所述BMC的状态;
若获取成功,则将所述BMC的状态标记为可用状态,所述建立模块建立与所述BMC之间的通信链路;
若获取失败,则根据预定的时间间隔重复执行获取操作,若在达到预定的获取次数后仍未成功获取所述BMC的状态,则将所述BMC的状态标记为不可用状态;
将所述BMC的状态存储至HOB中。
在其中一个实施例中,所述获取模块还用于:
在DXE阶段,从所述HOB中读取所述BMC的状态标志位,检查所述BMC的状态是否可用,若不可用,则创建定时器函数,所述定时器函数定时与所述BMC通信,获取所述BMC的状态。
又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
同时启动运行基本输入输出系统BIOS与基板管理控制器BMC;
所述BIOS获取所述BMC的状态,并判断所述BMC的状态是否为可用状态;
当所述BMC的状态为可用状态时,所述BIOS建立与所述BMC之间的通信链路。
上述建立通信链路的方法、装置和存储介质,在BMC启动的同时启动运行BIOS,定时器轮询的方式,让BIOS定期向BMC获取状态,充分让BIOS的启动时间,和BMCIPMI服务初始化时间重合,尽可能减少由于等待链路构建所造成的时间浪费,有助于提升设备的开机速度。
附图说明
图1为一个实施例中建立通信链路的方法流程示意图;
图2为一个实施例中建立通信链路的装置的结构框图;
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,如图1所示,提供一种建立通信链路的方法,所述方法包括:
步骤S101:同时启动运行基本输入输出系统BIOS与基板管理控制器BMC。
目前大多数的服务器和网络交换设备中,为了确保BIOS启动时无需等待太久或者由于retry次数达到上限而跳出循环,一般采用由CPLD控制BMC与BIOS先后启动的方案,即由整机设备插入AC上电后,CPLD控制BMC先上电启动,当BMC服务基本初始化完成后,由BMC反馈信号给CPLD,此时CPLD再给CPU上电,BIOS开始运行,采用这种先后顺序的方式规避由于等待BMC服务所造成的延时,但本质上来讲,整机设备的启动时间并未减少。
基于此,本步骤中,无需等待BMC服务基本初始化完成后再启动BIOS,而是在启动BMC的同时,也启动BIOS。整机设备上电后,放弃CPLD先后起电的逻辑,要求CPLD同时给BIOS和BMC上电,此时BIOS和BMC同时启动运行,BMC按照原始步骤持续启动。
步骤S102:所述BIOS获取所述BMC的状态,并判断所述BMC的状态是否为可用状态。
本步骤中,BIOS可以使用IPMI服务,向BMC发送状态查询,来获取BMC的状态,并确定当前BMC的状态是否可用。
步骤S103:当所述BMC的状态为可用状态时,所述BIOS建立与所述BMC之间的通信链路。
本步骤中,如果BMC的状态可用,则BIOS与BMC的握手通信,以建立通道。
本实施例通过同时启动BIOS和BMC,BIOS在获取到BMC的状态可用的情况下建立与BMC的通信链路,用BIOS的启动时间来弥补BMC初始化IPMI服务所用的时间,尽可能让二者时间互相重合,互相补充,达到加快开机进程的目的。
在其中一个实施例中,所述方法还包括:
在PEI阶段,所述BIOS使用IPMI服务获取所述BMC的状态;
若获取成功,则将所述BMC的状态标记为可用状态,建立与所述BMC之间的通信链路;
若获取失败,则根据预定的时间间隔重复执行获取操作,若在达到预定的获取次数后仍未成功获取所述BMC的状态,则将所述BMC的状态标记为不可用状态;
所述BIOS将所述BMC的状态存储至HOB中。
具体地,BIOS的启动流程分为四个阶段,分别为SEC,PEI,DXE,BDS,最后OS加载启动,其中,PEI(Pre-EFI Initialization)主要功能是为DXE准备执行环境,将需要传递到DXE的信息组成HOB(Handoff Block)列表,最终将控制权转交给DXE。DXE为驱动执行环境,执行大部分系统初始化工作。BDS(Boot Device Selection)的主要功能是执行启动策略。
BIOS在PEI阶段第一次尝试使用IPMI服务,向BMC发送状态查询,并确定当前BMC的状态,如果获取成功,则BIOS标记BMC状态为可用状态,后续代码执行时,检查到状态可用标志,则BIOS将IPMI服务安装,构建通道,并告知OS,OS可以使用该通路进行与BMC之间的通信;当获取状态不成功时,BIOS尝试retry 3次,等待时间和次数不能太久,若依旧不成功,则表明BMC服务未准备好,BIOS不再尝试,标记BMC状态不可用,继续向下执行
BIOS的PEI阶段启动时间比较快,且服务较少,因此这个阶段可尝试与BMC握手通信,检查BMC的状态,在状态可用时建立通信链路,节省开机启动时间。
在其中一个实施例中,所述方法还包括:
在DXE阶段,所述BIOS从所述HOB中读取所述BMC的状态标志位,检查所述BMC的状态是否可用,若不可用,则创建定时器函数,所述定时器函数定时与所述BMC通信,获取所述BMC的状态。
具体地,PEI阶段未建立通道后,BIOS将标记BMC的状态不可用,相关服务也未正常安装,此时,为了BIOS后面能继续尝试该服务,需要将BMC的不可用状态标记加入到HOB中,通过HOB将数据传递至DXE阶段,DXE阶段可用服务和功能很多,该阶段可以基于CPU的计时器定义Timer函数,DXE阶段开启后,首先安装DXEcore,DXE service等服务函数,在原有的流程中,在这些基础函数安装完毕后,增减OEM的功能,首先从PEI传来的HOB中找到BMC的状态标志位,检查BMC是否可用,若可用,则表明PEI阶段相关服务和通道已经建立完毕,无需添加其他功能,若不可用,此时需要使用CreatEvent函数,创建一个定时器函数,也就是创建一个定时执行的功能函数,用来和BMC进行握手通信。
DXE启动时间较长,根据不同的项目,大概启动时间能到1分钟-3分钟不等,正是利用的DXE的启动时间来填补BMC的IPMI服务初始化时间。DXE阶段拥有大概1-3分钟的时间用来供BIOS的定时器函数向BMC获取状态,并构建通信链路,根据BMC的服务启动时间大致需要1分钟左右,这样设计能使CPU的BIOS启动和BMC的IPMI服务初始化基本重合,在不额外增加时间的情况下构建二者之间的通信链路,确保启动加快,OS可用。
在其中一个实施例中,所述方法还包括:
所述BIOS与所述BMC建立通信链路之后,所述BIOS向所述BMC发送IPMI命令;
所述BIOS判断所述IPMI命令是否发送成功,如果是,则生成指示所述IPMI命令发送成功的第一标识信息。
具体地,在本实施例发送IPMI命令之后,判断IPMI命令是否发送成功。如果判定发送成功,则生成第一标识信息,其中,第一标识信息表征IPMI命令已发送成功。
可以理解的是,本实施例在判断IPMI命令是否发送成功后,对于发送成功将生成第一标识信息,也即,若未生成第一标识信息,则可判断BIOS出现故障,进一步对BIOS代码进行分析,以定位到故障区域并处理故障。
在其中一个实施例中,所述方法还包括:
在显示界面显示所述第一标识信息,所述第一标识信息为预设第一数值。
具体地,在判定IPMI命令发送成功之后,生成用于指示命令发送成功的第一标识信息,并将所述第一标识信息进行显示。其中,所述第一标识信息可以具体为预设第一数值,例如,利用数值1作为第一标识信息来表征命令发送成功。
在其中一个实施例中,所述方法还包括:
所述BIOS与所述BMC建立通信链路之后,再次获取所述BIOS与所述BMC之间的IPMI链路的状态,得到第二状态值;若所述第二状态值为异常,则执行重启命令进行设备重启。
具体地,在BIOS的BDS阶段再次检查BIOS和BMC之间的IPMI链路是否正常,若此时的状态值为异常,则判定所述BMC异常,根据本地的预设内存地址空间上的目标数据进行自我恢复,引导启动系统。
应该理解的是,虽然图1的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图2所示,提供了一种建立通信链路的装置,应用于BIOS中,所述装置包括:
启动模块201,用于在启动基板管理控制器BMC的同时,启动运行基本输入输出系统BIOS;
获取模块202,用于获取所述BMC的状态,并判断所述BMC的状态是否为可用状态;
建立模块203,用于当所述BMC的状态为可用状态时,建立与所述BMC之间的通信链路。
在其中一个实施例中,所述获取模块202还用于:
在PEI阶段,使用IPMI服务获取所述BMC的状态;
若获取成功,则将所述BMC的状态标记为可用状态,所述建立模块建立与所述BMC之间的通信链路;
若获取失败,则根据预定的时间间隔重复执行获取操作,若在达到预定的获取次数后仍未成功获取所述BMC的状态,则将所述BMC的状态标记为不可用状态;
将所述BMC的状态存储至HOB中。
在其中一个实施例中,所述获取模块202还用于:
在DXE阶段,从所述HOB中读取所述BMC的状态标志位,检查所述BMC的状态是否可用,若不可用,则创建定时器函数,所述定时器函数定时与所述BMC通信,获取所述BMC的状态。
在其中一个实施例中,所述建立模块203还用于:
所述BIOS与所述BMC建立通信链路之后,所述BIOS向所述BMC发送IPMI命令;
所述BIOS判断所述IPMI命令是否发送成功,如果是,则生成指示所述IPMI命令发送成功的第一标识信息。
在其中一个实施例中,所述建立模块203还用于:
在显示界面显示所述第一标识信息,所述第一标识信息为预设第一数值。
在其中一个实施例中,所述建立模块203还用于:
所述BIOS与所述BMC建立通信链路之后,再次获取所述BIOS与所述BMC之间的IPMI链路的状态,得到第二状态值;若所述第二状态值为异常,则执行重启命令进行设备重启。
关于建立通信链路的装置的具体限定可以参见上文中对于建立通信链路的方法的限定,在此不再赘述。上述建立通信链路的装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:
同时启动运行基本输入输出系统BIOS与基板管理控制器BMC;
所述BIOS获取所述BMC的状态,并判断所述BMC的状态是否为可用状态;
当所述BMC的状态为可用状态时,所述BIOS建立与所述BMC之间的通信链路。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
在PEI阶段,所述BIOS使用IPMI服务获取所述BMC的状态;
若获取成功,则将所述BMC的状态标记为可用状态,建立与所述BMC之间的通信链路;
若获取失败,则根据预定的时间间隔重复执行获取操作,若在达到预定的获取次数后仍未成功获取所述BMC的状态,则将所述BMC的状态标记为不可用状态;
所述BIOS将所述BMC的状态存储至HOB中。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
在DXE阶段,所述BIOS从所述HOB中读取所述BMC的状态标志位,检查所述BMC的状态是否可用,若不可用,则创建定时器函数,所述定时器函数定时与所述BMC通信,获取所述BMC的状态。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述BIOS与所述BMC建立通信链路之后,所述BIOS向所述BMC发送IPMI命令;
所述BIOS判断所述IPMI命令是否发送成功,如果是,则生成指示所述IPMI命令发送成功的第一标识信息。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
在显示界面显示所述第一标识信息,所述第一标识信息为预设第一数值。
在一个实施例中,计算机程序被处理器执行时还实现以下步骤:
所述BIOS与所述BMC建立通信链路之后,再次获取所述BIOS与所述BMC之间的IPMI链路的状态,得到第二状态值;若所述第二状态值为异常,则执行重启命令进行设备重启。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种建立通信链路的方法,其特征在于,包括:
同时启动运行基本输入输出系统BIOS与基板管理控制器BMC;
所述BIOS获取所述BMC的状态,并判断所述BMC的状态是否为可用状态;
当所述BMC的状态为可用状态时,所述BIOS建立与所述BMC之间的通信链路。
2.如权利要求1所述的方法,其特征在于,所述方法包括:
在PEI阶段,所述BIOS使用IPMI服务获取所述BMC的状态;
若获取成功,则将所述BMC的状态标记为可用状态,建立与所述BMC之间的通信链路;
若获取失败,则根据预定的时间间隔重复执行获取操作,若在达到预定的获取次数后仍未成功获取所述BMC的状态,则将所述BMC的状态标记为不可用状态;
所述BIOS将所述BMC的状态存储至HOB中。
3.如权利要求2所述的方法,其特征在于,所述方法包括:
在DXE阶段,所述BIOS从所述HOB中读取所述BMC的状态标志位,检查所述BMC的状态是否可用,若不可用,则创建定时器函数,所述定时器函数定时与所述BMC通信,获取所述BMC的状态。
4.如权利要求1所述的方法,其特征在于,所述方法包括:
所述BIOS与所述BMC建立通信链路之后,所述BIOS向所述BMC发送IPMI命令;
所述BIOS判断所述IPMI命令是否发送成功,如果是,则生成指示所述IPMI命令发送成功的第一标识信息。
5.如权利要求4所述的方法,其特征在于,所述方法包括:
在显示界面显示所述第一标识信息,所述第一标识信息为预设第一数值。
6.如权利要求1所述的方法,其特征在于,所述方法包括:
所述BIOS与所述BMC建立通信链路之后,再次获取所述BIOS与所述BMC之间的IPMI链路的状态,得到第二状态值;若所述第二状态值为异常,则执行重启命令进行设备重启。
7.一种建立通信链路的装置,应用于BIOS中,其特征在于,包括:
启动模块,用于在启动基板管理控制器BMC的同时,启动运行基本输入输出系统BIOS;
获取模块,用于获取所述BMC的状态,并判断所述BMC的状态是否为可用状态;
建立模块,用于当所述BMC的状态为可用状态时,建立与所述BMC之间的通信链路。
8.如权利要求7所述的装置,其特征在于,所述获取模块还用于:
在PEI阶段,使用IPMI服务获取所述BMC的状态;
若获取成功,则将所述BMC的状态标记为可用状态,所述建立模块建立与所述BMC之间的通信链路;
若获取失败,则根据预定的时间间隔重复执行获取操作,若在达到预定的获取次数后仍未成功获取所述BMC的状态,则将所述BMC的状态标记为不可用状态;
将所述BMC的状态存储至HOB中。
9.如权利要求8所述的装置,其特征在于,所述获取模块还用于:
在DXE阶段,从所述HOB中读取所述BMC的状态标志位,检查所述BMC的状态是否可用,若不可用,则创建定时器函数,所述定时器函数定时与所述BMC通信,获取所述BMC的状态。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111114304.7A CN113986357B (zh) | 2021-09-23 | 2021-09-23 | 建立通信链路的方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111114304.7A CN113986357B (zh) | 2021-09-23 | 2021-09-23 | 建立通信链路的方法、装置和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113986357A true CN113986357A (zh) | 2022-01-28 |
CN113986357B CN113986357B (zh) | 2023-08-11 |
Family
ID=79736335
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111114304.7A Active CN113986357B (zh) | 2021-09-23 | 2021-09-23 | 建立通信链路的方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113986357B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114924802A (zh) * | 2022-05-27 | 2022-08-19 | 苏州浪潮智能科技有限公司 | 基于bmc和bios的系统启动方法、装置设备及介质 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112463222A (zh) * | 2020-11-11 | 2021-03-09 | 苏州浪潮智能科技有限公司 | 一种服务器bios与bmc之间的数据交互方法、装置及设备 |
-
2021
- 2021-09-23 CN CN202111114304.7A patent/CN113986357B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112463222A (zh) * | 2020-11-11 | 2021-03-09 | 苏州浪潮智能科技有限公司 | 一种服务器bios与bmc之间的数据交互方法、装置及设备 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114924802A (zh) * | 2022-05-27 | 2022-08-19 | 苏州浪潮智能科技有限公司 | 基于bmc和bios的系统启动方法、装置设备及介质 |
CN114924802B (zh) * | 2022-05-27 | 2024-02-09 | 苏州浪潮智能科技有限公司 | 基于bmc和bios的系统启动方法、装置设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113986357B (zh) | 2023-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106020875B (zh) | 嵌入式终端的固件更新管理方法和装置 | |
CN110134446B (zh) | 启动pcie设备扫描的方法 | |
EP4092524B1 (en) | Ota differential upgrade method and system of master-slave architecture | |
WO2020010727A1 (zh) | 应用更新方法和装置及计算机可读存储介质 | |
CN105653306A (zh) | 显示启动设置界面的方法和装置 | |
CN110119623A (zh) | 一种利用tpcm实现固件主动度量的可信主板实现方法 | |
CN112527397A (zh) | 基本输入输出系统选项的修改方法、装置和计算机设备 | |
CN111338698A (zh) | 一种bios准确引导服务器启动的方法及系统 | |
CN111737064A (zh) | 一种bmc系统控制方法、装置、存储介质和计算机设备 | |
CN113986357B (zh) | 建立通信链路的方法、装置和存储介质 | |
CN111753309A (zh) | 一种显卡切换方法及服务器、存储介质 | |
CN113821265B (zh) | 操作系统控制方法、装置、计算机主板和可读存储介质 | |
CN110119625A (zh) | 一种可信计算方法 | |
CN111142949B (zh) | 一种信息处理方法和电子设备 | |
CN113721959A (zh) | 一种信息处理方法、装置及电子设备 | |
CN114327536A (zh) | 一种服务器运维方法、装置、设备及存储介质 | |
CN115495161B (zh) | Bios选项修改的生效方法和装置、存储介质 | |
CN112559155A (zh) | 批量作业处理方法、系统、计算机设备及可读存储介质 | |
CN108595193B (zh) | 用于风扇转速控制的基板管理控制器固件更新方法 | |
CN106445571B (zh) | 主机板及开机的方法 | |
CN114064097B (zh) | 软件升级方法、终端设备及存储介质 | |
CN110119624A (zh) | 一种安全度量方法 | |
CN113407217B (zh) | 芯片程序升级方法、通信设备及计算机可读存储介质 | |
CN110647343A (zh) | 一种OpenPower服务器及其系统部署方法 | |
CN117389658B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |