CN112463226A - 一种服务器的启动控制方法、系统、设备及存储介质 - Google Patents

一种服务器的启动控制方法、系统、设备及存储介质 Download PDF

Info

Publication number
CN112463226A
CN112463226A CN202011263975.5A CN202011263975A CN112463226A CN 112463226 A CN112463226 A CN 112463226A CN 202011263975 A CN202011263975 A CN 202011263975A CN 112463226 A CN112463226 A CN 112463226A
Authority
CN
China
Prior art keywords
bmc
bios
activated
data interaction
server
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.)
Withdrawn
Application number
CN202011263975.5A
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 Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur 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 Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202011263975.5A priority Critical patent/CN112463226A/zh
Publication of CN112463226A publication Critical patent/CN112463226A/zh
Withdrawn 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/4401Bootstrapping

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

本申请公开了一种服务器的启动控制方法,应用于BIOS中,包括:在服务器上电时,通过读取到的目标GPIO的状态判断BMC是否激活;如果是,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;如果否,则放弃与BMC进行数据交互并且继续执行BIOS的启动;其中,目标GPIO为用于反映BMC的激活状态的目标GPIO。应用本申请的方案,在实现服务器的启动控制时,通过让BIOS和BMC解耦,降低了服务器的开机耗时,保障了启动的可靠性。本申请还公开了一种服务器的启动控制系统、设备及存储介质,具有相应技术效果。

Description

一种服务器的启动控制方法、系统、设备及存储介质
技术领域
本发明涉及服务器技术领域,特别是涉及一种服务器的启动控制方法、系统、设备及存储介质。
背景技术
传统服务器中包含两个控制部分,其一是BIOS(Basic Input Output System,基本输入输出系统),另一个是服务器的BMC(Baseboard Management Controller,基板管理控制器),BMC主要负责服务器的风扇调控、温度监控、外设管理等功能,同时也参与和BIOS之间的数据传递与存储等功能。
服务器在开机时,通常BMC会先激活,之后再执行BIOS的开机动作。但是在少部分场合中,会出现BMC未激活的情况,此时,BIOS不断地通过IPMI协议问询BMC的激活状态,导致BIOS与BMC之间的其他交互数据无法正常进行,同时,BIOS自身的启动进程也大幅延缓,有时甚至出现了半小时才会启动到BIOS的Setup界面的情况,降低了服务器的可靠性。此外,由于BMC未激活,也会导致由BMC控制的VGA显示无法输出。
为了保证服务器的正常启动以及BIOS与BMC间的信息传递与交互,有的厂商在BMC激活后,下拉某个GPIO状态从而通知CPLD进行上电开机动作,进而启动BIOS,实现BIOS和BMC的正常交互功能和显示功能。这样的方案中,虽然保证了BIOS和BMC之间的交互数据的可靠性,即这样的保障了BMC是先激活,之后才执行BIOS的开机动作,但是,由于是先激活BMC,BMC激活的过程结束之后,才会通知CPLD以启动BIOS,因此,会存在明显的时间上的浪费。特别是对于紧急情况和特殊要求而言,这种方案时间上的损耗便体现地更加明显。
综上所述,如何有效地实现服务器的启动控制,降低服务器的开机耗时,是目前本领域技术人员急需解决的技术问题。
发明内容
本发明的目的是提供一种服务器的启动控制方法、系统、设备及存储介质,以有效地实现服务器的启动控制,降低服务器的开机耗时。
为解决上述技术问题,本发明提供如下技术方案:
一种服务器的启动控制方法,应用于BIOS中,包括:
在服务器上电时,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;
如果否,则放弃与BMC进行数据交互并且继续执行BIOS的启动;
其中,所述目标GPIO为用于反映BMC的激活状态的目标GPIO。
优选的,在通过读取到的目标GPIO的状态判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还包括:
重复执行最多N次的通过读取到的目标GPIO的状态判断BMC是否激活的操作;N为正整数;
当任意一次判断出BMC激活时,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动,当N次均判断出BMC未激活时,则放弃与BMC进行数据交互并且继续执行BIOS的启动。
优选的,在通过读取到的目标GPIO的状态判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还包括:
重复执行通过读取到的目标GPIO的状态判断BMC是否激活的操作,并且最多持续第一时长;
当所述第一时长中的任意时刻判断出BMC激活时,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动,当所述第一时长中均判断出BMC未激活时,则放弃与BMC进行数据交互并且继续执行BIOS的启动。
优选的,当重复执行了最多N次的通过读取到的目标GPIO的状态判断BMC是否激活的操作时,在N次均判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还包括:
在BIOS的BDS阶段,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;
如果否,则放弃与BMC进行数据交互并且继续执行BIOS的启动;
当重复执行了最多第一时长的通过读取到的目标GPIO的状态判断BMC是否激活的操作时,在所述第一时长中均判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还包括:
在BIOS的BDS阶段,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;
如果否,则放弃与BMC进行数据交互并且继续执行BIOS的启动。
优选的,所述目标GPIO为PCH上的目标GPIO,且PCH上的目标GPIO与BMC上的用于反映BMC的激活状态的GPIO连接;
或者,所述目标GPIO为CPU上的目标GPIO,且CPU上的目标GPIO与BMC上的用于反映BMC的激活状态的GPIO连接。
优选的,按照预设协议与BMC进行数据交互,包括:
按照IPMI协议将设备信息数据发送至BMC。
优选的,还包括:
对VGA显示驱动进行初始化以利用VGA显示驱动激活VGA显示。
一种服务器的启动控制系统,应用于BIOS中,包括:
判断单元,用于在服务器上电时,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则触发第一执行单元,用于按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;
如果否,则触发第二执行单元,用于放弃与BMC进行数据交互并且继续执行BIOS的启动;
其中,所述目标GPIO为用于反映BMC的激活状态的目标GPIO。
一种服务器的启动控制设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现上述任一项所述的服务器的启动控制方法的步骤。
一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的服务器的启动控制方法的步骤。
应用本发明实施例所提供的技术方案,将BMC与BIOS进行解耦,从而避免如传统方案中出现的BMC未激活时执行BIOS的开机动作导致的服务器的开机耗时大幅提升的情况。具体的,本申请会设置有能够反映出BMC的激活状态的目标GPIO。在服务器上电时,BIOS可以通过读取到的目标GPIO的状态判断出BMC是否激活,如果是,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动。而如果否,则BIOS会放弃与BMC进行数据交互并且继续执行BIOS的启动。也就是说,本申请的方案中,BIOS并不会如传统方案中在BMC未激活时,不断地通过IPMI协议问询BMC的激活状态,从而导致BIOS与BMC之间的其他交互数据无法正常进行,且大幅延缓BIOS自身的启动进程的情况发生。本申请的BIOS是直接放弃与BMC进行数据交互并且继续执行BIOS的启动,未激活的BMC并不会影响BIOS执行自身的启动进程,因此本申请的方案保证了服务器的可靠启动。并且,本申请的方案中,并不是如一些传统的方案中先激活BMC,在BMC激活的过程结束之后才通知CPLD以启动BIOS,本申请的方案BMC与BIOS是可以同时执行自身的启动进程的,即,BMC的激活与BIOS的启动是同时进行的,互不影响,因此本申请的方案也不会存在时间上的浪费。综上所述,本申请在实现服务器的启动控制时,通过让BIOS和BMC解耦,降低了服务器的开机耗时,保障了启动的可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明中一种服务器的启动控制方法的实施流程图;
图2为本发明中一种服务器的启动控制系统的结构示意图;
图3为本发明中一种服务器的启动控制设备的结构示意图。
具体实施方式
本发明的核心是提供一种服务器的启动控制方法,在实现服务器的启动控制时,通过让BIOS和BMC解耦,降低了服务器的开机耗时,保障了启动的可靠性。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,图1为本发明中一种服务器的启动控制方法的实施流程图,该服务器的启动控制方法可以应用于BIOS中,包括以下步骤:
步骤S101:在服务器上电时,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则执行步骤S102:按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;
如果否,则执行步骤S103:放弃与BMC进行数据交互并且继续执行BIOS的启动;
其中,目标GPIO为用于反映BMC的激活状态的目标GPIO。
具体的,步骤S101中描述的服务器上电,可以是服务器主板首次上电,也可以是断电之后的重新上电。
本申请需要在BMC上设置有能够反映出BMC的激活状态的GPIO引脚,进而将目标GPIO与BMC上的GPIO引脚连接,从而使得BIOS可以通过读取到的目标GPIO的状态判断出BMC是否激活。
目标GPIO所属的具体器件类型可以根据实际需要进行设定和调整,例如在本发明的一种具体实施方式中,目标GPIO为PCH上的目标GPIO,且PCH上的目标GPIO与BMC上的用于反映BMC的激活状态的GPIO连接;
或者,目标GPIO为CPU上的目标GPIO,且CPU上的目标GPIO与BMC上的用于反映BMC的激活状态的GPIO连接。
该种实施方式中,是考虑到在例如X86等架构上,PCH上具有GPIO,且BIOS可以从PCH上的GPIO获取信息,因此,便设置目标GPIO为PCH上的目标GPIO,且PCH上的目标GPIO需要与BMC上的用于反映BMC的激活状态的GPIO连接。
在常见的ARM架构中,则可以通过CPU自带的GPIO或者IO扩展芯片的GPIO作为本申请的目标GPIO。
此外,在其他架构中,可以根据实际情况设定目标GPIO所属的具体器件类型,只要能够使得BIOS可以通过读取到的目标GPIO的状态判断BMC出是否激活即可。
在实际应用中,通常会设置为BMC上的用于反映BMC的激活状态的GPIO的引脚为高电平时,表示BMC未激活,反之,为低电平时表示BMC已经激活。
BIOS通过读取到的目标GPIO的状态判断BMC激活之后,便可以执行步骤S102,步骤S102描述的预设协议可以根据实际需要进行设定和调整,目前较为常用的是IPMI协议。此外,BIOS与BMC进行数据交互的具体内容也可以根据需要进行设定,在本发明的一种具体实施方式中,步骤S102中描述的按照预设协议与BMC进行数据交互,可以具体包括:按照IPMI协议将设备信息数据发送至BMC。设备信息数据中包括的具体的数据项也可以根据实际情况进行设定和调整,并不影响本发明的实施,例如可以包括内存信息,网卡信息,CPU信息等。
如果BIOS通过读取到的目标GPIO的状态判断BMC未激活,本申请会放弃与BMC进行数据交互并且继续执行BIOS的启动,因为如果BMC未激活时,BIOS与BMC进行数据交互的话,不仅得不到BMC的反馈,导致数据交互无法进行下去,也会大幅延缓BIOS自身的启动速度,即会出现服务器的启动耗时被大幅延长的情况,不利于保障服务器的可靠性。
而本申请在判断出BMC未激活之后,放弃与BMC进行数据交互并且继续执行BIOS的启动,便不会影响BIOS自身的启动进程,即BIOS可以正常地引导启动,保证了服务器正常开机。
在本发明的一种具体实施方式中,在执行了步骤S101,通过读取到的目标GPIO的状态判断出BMC未激活之后,在执行步骤S103之前,还包括:
重复执行最多N次的通过读取到的目标GPIO的状态判断BMC是否激活的操作;N为正整数;
当任意一次判断出BMC激活时,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动,当N次均判断出BMC未激活时,则放弃与BMC进行数据交互并且继续执行BIOS的启动。
便于与后文区分,将该种实施方式称为实施例A。在实施例A中,判断出BMC未激活之后,并不是直接放弃与BMC进行数据交互,是考虑到BIOS的启动是一个过程,在这个过程中,在不会对BIOS的启动造成太大影响的前提下,可以通过目标GPIO多判断几次BMC的激活状态,一方面可以避免一次判断容易产生的误判情况,另一方面,本申请的方案中,BMC的激活与BIOS的启动是同时进行的且互不影响,某一次判断出BMC未激活,可能在几秒钟之后的某一次判断中,确定出BMC已经激活了,因此,该种实施方式会重复执行最多N次的通过读取到的目标GPIO的状态判断BMC是否激活的操作。例如N设置为5,在第3次判断时确定BMC激活,则可以按照预设协议与BMC进行数据交互并且继续执行BIOS的启动。当然,如果N次均判断出BMC未激活时,则可以执行步骤S103。此外,由于本申请的方案均是通过目标GPIO判断BMC的激活状态,在BMC未激活时并不会按照预设协议与BMC进行数据交互,因此,本申请的各个实施例中进行的一次或者多次的判断,并不会对BIOS的启动造成太大影响。
在本发明的一种具体实施方式中,在通过读取到的目标GPIO的状态判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还可以包括:
重复执行通过读取到的目标GPIO的状态判断BMC是否激活的操作,并且最多持续第一时长;
当第一时长中的任意时刻判断出BMC激活时,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动,当第一时长中均判断出BMC未激活时,则放弃与BMC进行数据交互并且继续执行BIOS的启动。
将该种实施方式称为实施例B。实施例B与实施例A是基于相同的出发点,能够其他同样的效果。与实施例A的区别在于,实施例B中,设定的条件是重复执行通过读取到的目标GPIO的状态判断BMC是否激活的操作,并且最多持续第一时长。这样的方式,可以很方便地控制重复判断的时长。当然,在第一时长的过程中,可以按照预设间隔判断或者实时判断。第一时长的具体取值可以根据实际需要进行设定和调整,例如一种场景中设置为30毫秒。
在本发明的一种具体实施方式中,在服务器上电时,通过读取到的目标GPIO的状态判断BMC未激活,可以在BIOS的BDS(Boot Device Select,选择引导设备)阶段,再进行一次判断,如果仍然是判断出BMC未激活,才放弃与BMC进行数据交互并且继续执行BIOS的启动。
该种实施方式中,考虑到BIOS的BDS阶段是BIOS启动的临近结束的阶段,此时如果BMC仍未激活,便无需在BIOS的后续启动过程中进行判断。并且,在BIOS的BDS阶段进行一次判断,也不会对BIOS的启动造成太大影响,即不会延长服务器的耗时。
此外需要说明的是,在BIOS的BDS阶段再进行一次判断的这种实施方式,也可以与前文的实施例B或者实施例A相结合,即在本发明的一种具体实施方式中,当重复执行了最多N次的通过读取到的目标GPIO的状态判断BMC是否激活的操作时,在N次均判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还可以包括:
在BIOS的BDS阶段,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则执行步骤S102;
如果否,则执行步骤S103;
当重复执行了最多第一时长的通过读取到的目标GPIO的状态判断BMC是否激活的操作时,在第一时长中均判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还包括:
在BIOS的BDS阶段,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则执行步骤S102;
如果否,则执行步骤S103。
此外需要说明的是,在传统的方案中,由于BMC未激活,也会导致由BMC控制的VGA显示无法输出。考虑到本申请的方案中已经将BIOS和BMC解耦,BMC是否激活均不会影响本申请的BIOS的正常启动,因此,本申请利用BIOS负责VGA显示的控制。即在本发明的一种具体实施方式中,还可以包括:
BIOS对VGA显示驱动进行初始化,以利用VGA显示驱动激活VGA显示。从而避免了由于BMC未激活导致的由VGA显示无法输出的情况发生。
应用本发明实施例所提供的技术方案,将BMC与BIOS进行解耦,从而避免如传统方案中出现的BMC未激活时执行BIOS的开机动作导致的服务器的开机耗时大幅提升的情况。具体的,本申请会设置有能够反映出BMC的激活状态的目标GPIO。在服务器上电时,BIOS可以通过读取到的目标GPIO的状态判断出BMC是否激活,如果是,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动。而如果否,则BIOS会放弃与BMC进行数据交互并且继续执行BIOS的启动。也就是说,本申请的方案中,BIOS并不会如传统方案中在BMC未激活时,不断地通过IPMI协议问询BMC的激活状态,从而导致BIOS与BMC之间的其他交互数据无法正常进行,且大幅延缓BIOS自身的启动进程的情况发生。本申请的BIOS是直接放弃与BMC进行数据交互并且继续执行BIOS的启动,未激活的BMC并不会影响BIOS执行自身的启动进程,因此本申请的方案保证了服务器的可靠启动。并且,本申请的方案中,并不是如一些传统的方案中先激活BMC,在BMC激活的过程结束之后才通知CPLD以启动BIOS,本申请的方案BMC与BIOS是可以同时执行自身的启动进程的,即,BMC的激活与BIOS的启动是同时进行的,互不影响,因此本申请的方案也不会存在时间上的浪费。综上所述,本申请在实现服务器的启动控制时,通过让BIOS和BMC解耦,降低了服务器的开机耗时,保障了启动的可靠性。
相应于上面的方法实施例,本发明实施例还提供了一种服务器的启动控制系统,可与上文相互对应参照。
参见图2所示,为本发明中一种服务器的启动控制系统的结构示意图,应用于BIOS中,包括:
判断单元201,用于在服务器上电时,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则触发第一执行单元202,用于按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;
如果否,则触发第二执行单元203,用于放弃与BMC进行数据交互并且继续执行BIOS的启动;
其中,目标GPIO为用于反映BMC的激活状态的目标GPIO。
在本发明的一种具体实施方式中,在判断单元201通过读取到的目标GPIO的状态判断出BMC未激活之后,在触发第二执行单元203之前,还包括:第一重复执行单元,用于:
重复执行最多N次的通过读取到的目标GPIO的状态判断BMC是否激活的操作;N为正整数;
当任意一次判断出BMC激活时,则触发第一执行单元202,当N次均判断出BMC未激活时,则触发第二执行单元203。
在本发明的一种具体实施方式中,在判断单元201通过读取到的目标GPIO的状态判断出BMC未激活之后,在触发第二执行单元203之前,还包括:第二重复执行单元,用于:
重复执行通过读取到的目标GPIO的状态判断BMC是否激活的操作,并且最多持续第一时长;
当第一时长中的任意时刻判断出BMC激活时,则触发第一执行单元202,当第一时长中均判断出BMC未激活时,则触发第二执行单元203。
在本发明的一种具体实施方式中,当第一重复执行单元重复执行了最多N次的通过读取到的目标GPIO的状态判断BMC是否激活的操作时,在N次均判断出BMC未激活之后,在触发第二执行单元203之前,还包括:BDS阶段判断单元,用于:
在BIOS的BDS阶段,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则触发第一执行单元202;
如果否,则触发第二执行单元203;
当第二重复执行单元重复执行了最多第一时长的通过读取到的目标GPIO的状态判断BMC是否激活的操作时,在第一时长中均判断出BMC未激活之后,在触发第二执行单元203之前,还包括:BDS阶段判断单元,用于:
在BIOS的BDS阶段,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则触发第一执行单元202;
如果否,则触发第二执行单元203。
在本发明的一种具体实施方式中,目标GPIO为PCH上的目标GPIO,且PCH上的目标GPIO与BMC上的用于反映BMC的激活状态的GPIO连接;
或者,目标GPIO为CPU上的目标GPIO,且CPU上的目标GPIO与BMC上的用于反映BMC的激活状态的GPIO连接。
在本发明的一种具体实施方式中,第一执行单元202,具体用于:
按照IPMI协议将设备信息数据发送至BMC,并且继续执行BIOS的启动。
在本发明的一种具体实施方式中,还包括:
VGA显示激活单元,用于对VGA显示驱动进行初始化以利用VGA显示驱动激活VGA显示。
相应于上面的方法和系统实施例,本发明实施例还提供了一种服务器的启动控制设备以及一种计算机可读存储介质,可与上文相互对应参照。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述任一实施例中的服务器的启动控制方法的步骤。这里所说的计算机可读存储介质包括随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
可参阅图3,为本发明中一种服务器的启动控制设备的结构示意图,包括:
存储器301,用于存储计算机程序;
处理器302,用于执行计算机程序以实现如上述任一实施例中的服务器的启动控制方法的步骤。
还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的技术方案及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。

Claims (10)

1.一种服务器的启动控制方法,其特征在于,应用于BIOS中,包括:
在服务器上电时,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;
如果否,则放弃与BMC进行数据交互并且继续执行BIOS的启动;
其中,所述目标GPIO为用于反映BMC的激活状态的目标GPIO。
2.根据权利要求1所述的服务器的启动控制方法,其特征在于,在通过读取到的目标GPIO的状态判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还包括:
重复执行最多N次的通过读取到的目标GPIO的状态判断BMC是否激活的操作;N为正整数;
当任意一次判断出BMC激活时,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动,当N次均判断出BMC未激活时,则放弃与BMC进行数据交互并且继续执行BIOS的启动。
3.根据权利要求1所述的服务器的启动控制方法,其特征在于,在通过读取到的目标GPIO的状态判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还包括:
重复执行通过读取到的目标GPIO的状态判断BMC是否激活的操作,并且最多持续第一时长;
当所述第一时长中的任意时刻判断出BMC激活时,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动,当所述第一时长中均判断出BMC未激活时,则放弃与BMC进行数据交互并且继续执行BIOS的启动。
4.根据权利要求2或3所述的服务器的启动控制方法,其特征在于,当重复执行了最多N次的通过读取到的目标GPIO的状态判断BMC是否激活的操作时,在N次均判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还包括:
在BIOS的BDS阶段,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;
如果否,则放弃与BMC进行数据交互并且继续执行BIOS的启动;
当重复执行了最多第一时长的通过读取到的目标GPIO的状态判断BMC是否激活的操作时,在所述第一时长中均判断出BMC未激活之后,在放弃与BMC进行数据交互之前,还包括:
在BIOS的BDS阶段,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;
如果否,则放弃与BMC进行数据交互并且继续执行BIOS的启动。
5.根据权利要求1所述的服务器的启动控制方法,其特征在于,所述目标GPIO为PCH上的目标GPIO,且PCH上的目标GPIO与BMC上的用于反映BMC的激活状态的GPIO连接;
或者,所述目标GPIO为CPU上的目标GPIO,且CPU上的目标GPIO与BMC上的用于反映BMC的激活状态的GPIO连接。
6.根据权利要求1所述的服务器的启动控制方法,其特征在于,按照预设协议与BMC进行数据交互,包括:
按照IPMI协议将设备信息数据发送至BMC。
7.根据权利要求1所述的服务器的启动控制方法,其特征在于,还包括:
对VGA显示驱动进行初始化以利用VGA显示驱动激活VGA显示。
8.一种服务器的启动控制系统,其特征在于,应用于BIOS中,包括:
判断单元,用于在服务器上电时,通过读取到的目标GPIO的状态判断BMC是否激活;
如果是,则触发第一执行单元,用于按照预设协议与BMC进行数据交互并且继续执行BIOS的启动;
如果否,则触发第二执行单元,用于放弃与BMC进行数据交互并且继续执行BIOS的启动;
其中,所述目标GPIO为用于反映BMC的激活状态的目标GPIO。
9.一种服务器的启动控制设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至7任一项所述的服务器的启动控制方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的服务器的启动控制方法的步骤。
CN202011263975.5A 2020-11-12 2020-11-12 一种服务器的启动控制方法、系统、设备及存储介质 Withdrawn CN112463226A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011263975.5A CN112463226A (zh) 2020-11-12 2020-11-12 一种服务器的启动控制方法、系统、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011263975.5A CN112463226A (zh) 2020-11-12 2020-11-12 一种服务器的启动控制方法、系统、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112463226A true CN112463226A (zh) 2021-03-09

Family

ID=74826266

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011263975.5A Withdrawn CN112463226A (zh) 2020-11-12 2020-11-12 一种服务器的启动控制方法、系统、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112463226A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113419926A (zh) * 2021-08-25 2021-09-21 苏州浪潮智能科技有限公司 一种服务器bios启动进程的监测方法、系统及装置
CN116149957A (zh) * 2023-04-19 2023-05-23 湖南博匠信息科技有限公司 一种通过bmc保存服务器上下电记录的方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113419926A (zh) * 2021-08-25 2021-09-21 苏州浪潮智能科技有限公司 一种服务器bios启动进程的监测方法、系统及装置
CN113419926B (zh) * 2021-08-25 2021-11-19 苏州浪潮智能科技有限公司 一种服务器bios启动进程的监测方法、系统及装置
US11880690B1 (en) 2021-08-25 2024-01-23 Inspur Suzhou Intelligent Technology Co., Ltd. Method, system and apparatus for monitoring bios booting process of server
CN116149957A (zh) * 2023-04-19 2023-05-23 湖南博匠信息科技有限公司 一种通过bmc保存服务器上下电记录的方法
CN116149957B (zh) * 2023-04-19 2023-06-20 湖南博匠信息科技有限公司 一种通过bmc保存服务器上下电记录的方法

Similar Documents

Publication Publication Date Title
JP3598272B2 (ja) オペレーティングシステムの起動及びリスタート方法
JP6272991B2 (ja) プリブートファームウェア更新のための選択的パワーマネジメント
US5978911A (en) Automatic error recovery in data processing systems
US5564054A (en) Fail-safe computer boot apparatus and method
US20080162901A1 (en) Computer Multiple Operation System Switching Method
WO2007045133A1 (fr) Systeme informatique et procede pouvant realiser une verification d’integrite
US8499202B2 (en) Method and system for recovery of a computing environment during pre-boot and runtime phases
JP2015512535A (ja) システム変更後におけるコンピューティング装置の適切な動作を確認するための方法及びシステム
US20090271660A1 (en) Motherboard, a method for recovering the bios thereof and a method for booting a computer
CN110908847A (zh) 一种异常恢复方法、系统、电子设备及存储介质
CN112463222A (zh) 一种服务器bios与bmc之间的数据交互方法、装置及设备
US12001285B2 (en) System booting method and apparatus, node device, and computer-readable storage medium
CN112463226A (zh) 一种服务器的启动控制方法、系统、设备及存储介质
US7089413B2 (en) Dynamic computer system reset architecture
GB2433143A (en) Fast turn on of a computer operated device by running the BIOS to boot the operating system when power is supplied before the device is turned on.
CN113032788A (zh) 一种计算机系统中的固件镜像切换方法、装置及介质
JP2002259130A (ja) 情報処理システムおよびその起動制御方法
CN111708652B (zh) 一种故障修复方法及装置
TWI352281B (en) Method for judging a rebooting action of a compute
CN113010215B (zh) 一种操作系统快速重启的方法、装置、设备及可读介质
CN113867807A (zh) 一种缩短服务器上电时间的方法、装置、设备和存储介质
US6826701B1 (en) Re-running general purpose event control methods in a computer system
US11586536B1 (en) Remote configuration of multi-mode DIMMs through a baseboard management controller
CN116755749A (zh) 板载mcu的升级方法、板载mcu、板卡及信息处理系统
WO2008048581A1 (en) A processing device operation initialization system

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
WW01 Invention patent application withdrawn after publication

Application publication date: 20210309

WW01 Invention patent application withdrawn after publication