CN103733180A - 服务器的控制方法和服务器的控制设备 - Google Patents

服务器的控制方法和服务器的控制设备 Download PDF

Info

Publication number
CN103733180A
CN103733180A CN201380002066.8A CN201380002066A CN103733180A CN 103733180 A CN103733180 A CN 103733180A CN 201380002066 A CN201380002066 A CN 201380002066A CN 103733180 A CN103733180 A CN 103733180A
Authority
CN
China
Prior art keywords
server
cpu
pch
primary
abnormal
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
CN201380002066.8A
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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201510811081.8A priority Critical patent/CN105446833B/zh
Publication of CN103733180A publication Critical patent/CN103733180A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • 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/0706Error 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 the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error 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 the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • 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/0793Remedial or corrective actions
    • 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/1417Boot up procedures
    • 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/4406Loading of operating system
    • 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/1441Resetting or repowering

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)
  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)
  • Multi Processors (AREA)

Abstract

本发明实施例提供一种通过服务器的控制方法和服务器的控制设备,以解决现有技术中因服务器启动异常导致业务中断的问题。本发明实施例的控制方法和服务器的控制设备,在服务器因主用CPU、与主用CPU连接的PCH或与主用CPU连接的PCH相连的Flash异常导致服务器启动异常时,主用CPU被重新配置。实现了支持硬分区的服务器中出现启动异常时,仍然能够确保服务器正常启动和运行,提高了服务器的可靠性和稳定性;使得整个服务器的RAS得到提升;同时解决了FLASH异常导致***不能运行的问题,可以不再使用原有的BIOS设计方式,节省了服务器的FLASH芯片成本。

Description

服务器的控制方法和服务器的控制设备
技术领域
本发明涉及信息技术领域,尤其涉及一种服务器的控制方法和服务器的控制设备。
背景技术
服务器是网络环境中的高性能计算机,能够侦听网络上的其他计算机(客户机)提交的服务请求,并提供相应的服务。按照体系架构来区分,服务器主要分为两类:非X86服务器和X86服务器。X86服务器又称复杂指令集架构服务器,即通常所讲的PC服务器,它是基于PC机体系结构,使用Intel或其它兼容x86指令集的处理器芯片的服务器。
随着信息化技术的进一步发展,服务器在日常的IT(InformationTechnical,信息技术)应用中变得越来越重要。在服务器上承载的业务也越来越多。由于服务器的异常或者宕机,往往会给客户带来非常大的损失。因此,不管是在通用的服务器上,还是在关键应用服务器上,服务器的RAS(Reliability,Availability and Serviceability,可靠性、可用性和可服务性)特性都变得越来越重要。
所谓的RAS,即所谓的可靠性、可用性、可服务性,是服务器的重要指标。如何实现服务器具有很高的RAS特性,同时又具有较好的性价比,是服务器开发当中重点关注的。特别是对于中高端服务器,完整的RAS特性是衡量一台服务器是否高端的主要指标。
在通常的中高端X86服务器或者更高端的小型机中,一般都会要求服务器能够支持硬分区。所谓的硬分区,就是将一个服务器分隔为几个完全独立的子服务器。这些子服务器是一个完整的服务器***,它们拥有自己的BIOS(BasicInput Output System,基本输入输出***)和操作***,与通常所说的单台服务器类似。例如,一个8路的X86服务器硬分区成2个4路服务器,或者是4个2路服务器,这种通过硬分区分隔出来的服务器是可以独立运行、独立上电、独立下电、独立管理。
一般的X86服务器主要有CPU(Central Processing Unit,中央处理器)、PCH(Platform Controller Hub,平台控制器集线器)、内存、硬盘、插卡等多个部件组成。对于支持硬分区功能的X86服务器,需要配置多个PCH芯片,一般来说是***支持几个硬分区就需要配置多个PCH芯片。如图1(a)所示是一个8路服务器的***框架,图1(b)是一个8路服务器硬分区成2个4路服务器的***框架。
在图1(a)中,是8P独立模式,与CPU1相连的PCH为主用PCH,与其他处理器相连的PCH为从PCH。从PCH有两种工作模式,第一种是该PCH被禁止,对外不能提供任何功能,第二种是该PCH处于部分功能可用状态,比如该PCH上的USB、SATA功能还是可用的,但不能参与整个服务器的管理功能。
在图1(b)中,是8P分区模式,上面4个CPU及PCH组成一个独立的***,下面4个CPU及PCH组成一个独立的***,两个***之间的QPI(Quick PathInterconnect,快速路径互联)连接被断开,彼此之间没有任务的交互。
在现有技术中,***的RAS存在着较大的缺点:当服务器未进行分区时,如果CPU1所连的主用PCH异常(例如芯片损坏),或主用PCH所连的FLASH出现异常(例如芯片损坏,FLASH所在的BIOS被异常擦除),整个服务器就处于宕机状态。此时运行在该服务器上的业务将被中断。
发明内容
本发明实施例提供一种服务器的控制方法和服务器的控制设备,实现在服务器启动异常时,保证业务的正常运行。
本发明实施例提供了一种服务器中的控制设备,所述服务器包括至少两个中央处理器CPU和至少两个平台控制集线器PCH,每个所述PCH与至少一个所述CPU相连,所述控制设备包括:
配置单元,用于配置所述CPU的标号,并将其中一个CPU标记为主用CPU;在所述服务器启动异常时,将正常的CPU或与正常PCH连接的CPU配置为主用CPU,所述服务器启动异常包括主用CPU、与主用CPU连接的PCH或与主用CPU连接的PCH相连的Flash异常导致的基本输入输出***BIOS启动异常;
重启单元,用于在所述服务器启动异常时,触发所述服务器重新启动,并触发所述配置单元将正常的CPU或与正常PCH连接的CPU配置为主用CPU。
作为一种可选的实现方式,所述配置单元包括:
管脚配置单元,用于配置所述至少两个CPU的管脚,通过配置所述管脚的值将其中一个CPU配置为主用CPU;
信息接收单元,用于接收所述重启单元发送的所述服务器启动异常的信息,触发所述管脚配置单元将一个正常的CPU或与正常PCH连接的一个CPU配置为主用CPU。
作为一种可选的实现方式,所述重启单元包括:
判断单元,用于判断在预设时间内所述服务器是否启动异常;
触发单元,用于在所述判断单元判断所述服务器启动异常时,触发所述服务器重新启动,并触发所述配置单元将正常的一个CPU或与正常PCH连接的一个CPU配置为主用CPU。
作为一种可选的实现方式,所述触发单元包括:
第一触发单元,用于在所述服务器启动异常时,通过所述BIOS预先设置的寄存器触发所述服务器重新启动;
第二触发单元,用于在所述服务器重新启动过程中,判断是否存在导致所述服务器启动异常的异常信息,在存在所述异常信息时,触发所述配置单元将正常的一个CPU或与正常PCH连接的一个CPU配置为主用CPU,所述异常信息是在所述服务器重启前由所述BIOS触发记录的信息。
作为一种可选的实现方式,所述服务器是支持硬分区功能的服务器,所述服务器中的CPU的管脚连接到所述控制设备中。
作为一种可选的实现方式,所述控制设备在所述服务器的复杂可编程逻辑器件CPLD或现场可编程门阵列FPGA中实现。
本发明实施例还提供了一种服务器控制方法,所述方法应用于服务器中,所述服务器包括至少两个中央处理器CPU和至少两个平台控制集线器PCH,每个所述PCH与至少一个所述CPU相连,所述方法包括:
配置所述CPU的标号,并将其中一个CPU标记为主用CPU;
判断所述服务器是否启动异常,如果启动异常则记录异常信息,并触发所述服务器重新启动;所述异常信息包括主用CPU、与主用CPU连接的PCH或与主用CPU连接的PCH相连的Flash异常导致的基本输入输出***BIOS启动异常;
在所述服务器重新启动过程中,根据所述记录的异常信息,将正常的CPU或与正常PCH连接的CPU配置为主用CPU。
作为一种可选的实现方式,所述配置CPU的标号具体是配置所述CPU的管脚,所述将其中一个CPU标记为主用CPU,是通过配置所述管脚的值将其中一个CPU配置为主用CPU。
作为一种可选的实现方式,判断所述服务器是否启动异常包括:
设定定时器,所述定时器的时长小于所述服务器看门狗的定时器时长;
在所述服务器启动过程中,如果在所述定时器设定时间内所述看门狗未被禁止,则判定所述服务器启动异常。
作为一种可选的实现方式,所述方法是由复杂可编程逻辑器件CPLD或现场可编程门阵列FPGA实现。
作为一种可选的实现方式,所述触发服务器重新启动是通过设置在所述CPLD或所述FPGA中的重启寄存器触发所述服务器重新启动。
作为一种可选的实现方式,服务器是支持硬分区功能的服务器,所述服务器中的CPU的管脚连接到所述CPLD或所述FPGA中。
通过本发明实施例的控制方法和服务器的控制设备,在服务器因主用CPU、与主用CPU连接的PCH或与主用CPU连接的PCH相连的Flash异常导致服务器启动异常时,CPU的管脚被重新配置,服务器的主用CPU发生了变化,BIOS启动时会从新的主用PCH所连的FLASH获取指令并执行。实现了支持硬分区的服务器中出现启动异常时,仍然能够确保服务器正常启动和运行,提高了服务器的可靠性和稳定性;使得整个服务器的RAS得到提升;同时解决了FLASH异常导致***不能运行的问题,可以不再使用原有的双BIOS设计方式,节省了服务器的FLASH芯片成本。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1(a)为现有技术中服务器***结构示意图;
图1(b)为现有技术中另一服务器***结构示意图;
图2为本发明实施例一种服务器的控制设备的结构示意图;
图3为本发明实施例一种服务器的控制设备的另一具体实现结构示意图;
图4为本发明实施例一种8路服务器的基本硬件结构示意图;
图5为本发明实施例一种服务器控制方法的流程示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。
参考图2,图2为本发明实施例提供的一种服务器中的控制设备200的结构示意图,所述服务器包括至少两个CPU和至少两个PCH,每个所述PCH与至少一个所述CPU相连,所述控制设备200包括:
配置单元201,用于配置所述CPU的标号,并将其中一个CPU标记为主用CPU;在所述服务器启动异常时,将正常的CPU或与正常PCH连接的CPU配置为主用CPU,所述服务器启动异常包括主用CPU、与主用CPU连接的PCH或与主用CPU连接的PCH相连的Flash异常导致的BIOS启动异常;
重启单元202,用于在所述服务器启动异常时,触发所述服务器重新启动,并触发所述配置单元201将正常的CPU或与正常PCH连接的CPU配置为主用CPU。
作为一种可选的实现方式,如图3所示,所述配置单元201包括:
管脚配置单元2011,用于配置所述至少两个CPU的管脚,通过配置所述管脚的值将其中一个CPU配置为主用CPU;
信息接收单元2012,用于接收所述重启单元202发送的所述服务器启动异常的信息,触发所述管脚配置单元2011将一个正常的CPU或与正常PCH连接的一个CPU的配置为主用CPU。
作为一种可选的实现方式,所述重启单元202包括:
判断单元2021,用于判断在预设时间内所述服务器是否启动异常;
触发单元2022,用于在所述判断单元2021判断所述服务器启动异常时,触发所述服务器重新启动,并触发所述配置单元201将正常的一个CPU或与正常PCH连接的一个CPU配置为主用CPU。
作为一种可选的实现方式,所述触发单元2022包括:
第一触发单元20221,用于在所述服务器启动异常时,通过所述BIOS预先设置的寄存器触发所述服务器重新启动;
第二触发单元20222,用于在所述服务器重新启动过程中,判断是否存在导致所述服务器启动异常的异常信息,在存在所述异常信息时,触发所述配置单元201将正常的一个CPU或与正常PCH连接的一个CPU配置为主用CPU,所述异常信息是在所述服务器重启前由所述BIOS触发记录的信息。
作为一种可选的实现方式,本发明实施例的控制设备,在所述服务器的CPLD(complex programmable logical device,复杂可编程逻辑器件)或FPGA(field programmable gate array,现场可编程门阵列)中实现。
作为一种可选的实现方式,本发明实施例的服务器是支持硬分区功能的服务器,所述服务器中的CPU的管脚连接到所述控制设备中。其中,所述服务器中的控制设备,可以通过SMBUS(System Manage bus,***管理总线)或LPC(LowPin Count,低点计算)总线等与所述服务器中的CPU相连;所述控制设备通过所述SMBUS总线或LPC总线实现对所述CPU管脚的配置。
本发明实施例的中的支持硬分区功能的服务器,是指支持将一个服务器分隔为几个完全独立的子服务器的服务器。所述的子服务器,可以被看作是一个独立的服务器***,包括独立的BIOS、PCH、CPU和操作***等。例如,一个8路的X86服务器硬分区成2个4路子服务器,或者是4个2路子服务器,这种通过硬分区分隔出来的服务器是可以独立运行、独立上电、独立下电、独立管理等。所述的8路服务器,是指包含8个CPU的服务器;所述4路子服务器,是指包含4个CPU的子服务器;所述2路子服务器,是指包含2个CPU的子服务器。
下面以一个8路服务器,被硬分区成2个4路子服务器为例,对本发明实施例一种服务器中的控制设备的实现方式做进一步说明。该实施例以控制设备在CPLD中实现为例进行说明。
参考图4,图4为一种8路服务器的基本硬件结构示意图。该8路服务器是一个支持硬分区功能的X86服务器,包括8个CPU,两个PCH,以及与各个PCH相连的Flash,所述8个CPU的管脚被引入到CPLD中,由CPLD通过对CPU管脚的配置实现对CPU的管理,例如将某一个CPU配置为主用CPU。该8路服务器可以包含多个PCH,作为一种常用的实现方式,如果该服务器被硬分区为2个4路的子服务器,则只包含2个PCH;每个PCH与1路子服务器的CPU相连。假设图4中CPU5为主用CPU,则与CPU5相连的PCH为主用PCH,与CPU1相连的PCH为从PCH。从PCH有通常两种工作模式,第一种是该PCH被禁止,对外不提供任何功能;第二种是该PCH处于部分功能可用状态,比如该PCH上的USB、SATA功能可用,但不能参与整个服务器的管理功能。
在上述图4所示的服务器中,上面4个CPU(CPU5,CPU3,CPU2,CPU4)及PCH组成一个独立的子服务器;下面4个CPU(CPU1,CPU7,CPU6,CPU8)及PCH组成一个独立的子服务器,两个子服务器之间的QPI连接被断开(即通过内部的寄存器将QPI端口禁止),彼此之间没有任务的交互。
所述服务器中CPU是通过其SOCKET_ID管脚来识别的,每个CPU的SOCKET_ID管脚都需要连接到CPLD的配置单元201中;由该配置单元201根据实际的需要配置每个CPU的SOCKET_ID管脚值。作为一种可选的实现方式,图4所示的CPU的管脚配置可以是:SOCKET_ID=0就表示该CPU是1号处理器,SOCKET_ID=1就表示2号处理器,以此类推SOCKET_ID=7表示8号处理器。此外,还用管脚EX_LEGACY_SKT用来区分CPU为主用处理器还是普通处理器。如果某一CPU所连的SOCKET_ID为0,则表示该CPU为主用CPU,需要将EX_LEGACY_SKT配置为1;否则将该管脚EX_LEGACY_SKT配置为0,表示该CPU为普通CPU。实现CPLD对CPU管脚的配置,可以通过SMBUS总线或LPC总线等连接方式,与CPU相连。
下面以图4中上排最左边的CPU5为主用CPU,与该主用CPU相连的PCH能够正常工作为例进行说明。所述CPLD中的配置单元201配置CPU5的管脚,将其SOCKET_ID配置为0,将其EX_LEGACY_SKT配置为1;将下排最左边的CPU1配置为普通处理器,即将其SOCKET_ID配置为4,将其EX_LEGACY_SKT配置为0。与主用CPU相连的PCH即为即主用PCH。
当图4所示的服务器上电后,其中的BIOS自动从主用PCH所连的FLASH获取指令并执行。所述CPLD中的重启单元202,会监控主用CPU、主用PCH以及主用PCH所连接的FLASH是否正常。如果主用CPU、主用PCH及所连的FLASH都正常,则BIOS程序会顺利的往下执行,并将***引导进OS操作***中。如果在BIOS引导的某个过程中主用CPU、主用PCH或其所连的FLASH出现异常,则所述重启单元202触发所述服务器重新启动,并触发所述配置单元201将正常的CPU或与正常PCH连接的CPU配置为主用CPU。
所述重启单元202判断所述主用CPU、主用PCH或其所连的FLASH异常,可通过设置定时器的方式,并设定定时器的时长小于看门狗的定时器时长,如果在设置的定时器超时前,看门狗没有被禁止,则判定启动异常。具体的,可以由重启单元202中的判断单元2021判断设定时间内看门狗是否被禁止,如果未被禁止或被喂狗,则确认所述服务器启动异常。相应的,所述控制设备中的触发单元2022,基于所述判断单元2021判断服务器异常,触发所述服务器重新启动,并触发所述配置单元201将正常的一个CPU或与正常PCH连接的一个CPU配置为主用CPU;具体的,是将CPU1配置为主用CPU,将其SOCKET_ID配置为0,将其EX_LEGACY_SKT配置为1;将CPU5配置为普通处理器,即将其SOCKET_ID配置为4,将其EX_LEGACY_SKT配置为0。
作为一种可选的实现方式,在所述判断单元2021判断所述服务器启动异常时,由所述触发单元2022中的第一触发单元2022,基于BIOS在所述CPLD中预先设置的重启寄存器触发所述服务器重新启动。在重启前,所述服务器的BIOS会将H异常信息写入某个寄存器中,例如E2PROM(Electrically Erasable andProgrammable Read-Only Memory,电可擦编程只读存储器)寄存器,。所述服务器重启后,所述第二触发单元2022判断该E2PROM的寄存器中是否记录有异常信息,如果有异常信息,则触发所述配置单元201重新配置各个CPU的SOCKET_ID及EX_LEGACY_SKT管脚。
通过上述服务器的控制设备的实现方式,CPU的管脚重新配置后,所述服务器的主用CPU发生了变化,BIOS启动时会从新的主用PCH所连的FLASH获取指令并执行。实现了支持硬分区的服务器中出现启动异常时,仍然能够确保服务器正常启动和运行,提高了服务器的可靠性和稳定性;使得整个服务器的RAS得到提升;同时解决了FLASH异常导致***不能运行的问题,可以不再使用原有的双BIOS设计方式,节省了服务器的FLASH芯片成本。
参考图5,图5为本发明实施例提供的一种服务器控制方法的流程示意图,该方法应用于服务器中,所述服务器包括至少两个CPU和至少两个PCH,每个所述PCH与至少一个所述CPU相连,所述方法包括:
步骤500,配置所述CPU的标号,并将其中一个CPU标记为主用CPU;
步骤502,判断所述服务器是否启动异常,如果启动异常则记录异常信息,并触发所述服务器重新启动;所述异常信息包括主用CPU、与主用CPU连接的PCH或与主用CPU连接的PCH相连的Flash异常导致的BIOS启动异常;
步骤504,在所述服务器重新启动过程中,根据所述记录的异常信息,将正常的CPU或与正常PCH连接的CPU配置为主用CPU。
本发明实施例的服务器控制方法是由服务器中的CPLD或FPGA等逻辑芯片来实现。本发明实施例以在CPLD中实现为例进行说明。
其中,所述步骤500中,所述配置CPU的标号具体是配置所述CPU的管脚,所述将其中一个CPU标记为主用CPU,是通过配置所述管脚的值将其中一个CPU配置为主用CPU。
所述配置CPU的管脚,具体可通过配置SOCKET_ID和EX_LEGACY_SKT的值来实现。其中SOCKET_ID用于标识不同的CPU,EX_LEGACY_SKT用于标识某一个CPU是主用CPU还是普通CPU。例如,将图4的服务器中,SOCKET_ID=0就表示该CPU是1号处理器,SOCKET_ID=1就表示2号处理器,以此类推SOCKET_ID=7表示8号处理器;如果SOCKET_ID为0的CPU为主用CPU,则将其EX_LEGACY_SKT配置为1,将其它CPU的值配置为0。
作为一种可选的实现方式,所述步骤502中的判断所述服务器是否启动异常包括:
设定定时器,所述定时器的时长小于所述服务器看门狗的定时器时长;
在所述服务器启动过程中,如果在所述定时器设定时间内所述看门狗未被禁止,则判定所述服务器启动异常。
所述步骤502中的触发所述服务器重新启动可以通过设置在所述CPLD芯片中的重启寄存器触发所述服务器重新启动。作为一种可选的实现方式,所述重启寄存器可以是BIOS设置在所述CPLD芯片中或所述FPGA中的。
所述步骤502中的记录异常信息,可以通过将异常信息记录在E2PROM的等寄存器中实现。当然,所述异常信息也可以记录在所述服务器的其它地方,本发明实施例不限定所述异常信息记录的位置。作为一种可选的实现方式,所述异常信息,是由BIOS来记录的,例如BIOS将异常信息记录在E2PROM的某个寄存器中。
相应的,在步骤504中,由CPLD判断E2PROM的寄存器是否记录异常信息,如果有异常信息,则重新配置各个CPU的SOCKET_ID及EX_LEGACY_SKT的管脚值。例如将图4中的CPU1配置为主用CPU,将其SOCKET_ID配置为0,将其EX_LEGACY_SKT配置为1;将CPU5配置为普通处理器,即将其SOCKET_ID配置为4,将其EX_LEGACY_SKT配置为0。
作为一种可选的实现方式,本发明实施例的服务器控制方法中的服务器是支持硬分区功能的服务器,所述服务器中的CPU的管脚连接到所述控制设备中。其中,所述服务器中的控制设备,可以通过SMBUS总线或LPC总线等与所述服务器中的CPU相连;所述控制设备通过所述SMBUS总线或LPC总线实现对所述CPU管脚的配置。
通过上述服务器的控制方法,实现了支持硬分区的服务器中出现启动异常时,仍然能够确保服务器正常启动和运行,提高了服务器的可靠性和稳定性;使得整个服务器的RAS得到提升;同时解决了FLASH异常导致***不能运行的问题,可以不再使用原有的双BIOS设计方式,节省了服务器的FLASH芯片成本。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (12)

1.一种服务器中的控制设备,所述服务器包括至少两个中央处理器CPU和至少两个平台控制集线器PCH,每个所述PCH与至少一个所述CPU相连,其特征在于,所述控制设备包括:
配置单元,用于配置所述CPU的标号,并将其中一个CPU标记为主用CPU;在所述服务器启动异常时,将正常的CPU或与正常PCH连接的CPU配置为主用CPU,所述服务器启动异常包括主用CPU、与主用CPU连接的PCH或与主用CPU连接的PCH相连的Flash异常导致的基本输入输出***BIOS启动异常;
重启单元,用于在所述服务器启动异常时,触发所述服务器重新启动,并触发所述配置单元将正常的CPU或与正常PCH连接的CPU配置为主用CPU。
2.根据权利要求1所述的服务器中的控制设备,其特征在于,所述配置单元包括:
管脚配置单元,用于配置所述至少两个CPU的管脚,通过配置所述管脚的值将其中一个CPU配置为主用CPU;
信息接收单元,用于接收所述重启单元发送的所述服务器启动异常的信息,触发所述管脚配置单元将一个正常的CPU或与正常PCH连接的一个CPU配置为主用CPU。
3.根据权利要求1或2所述的服务器中的控制设备,其特征在于,所述重启单元包括:
判断单元,用于判断在预设时间内所述服务器是否启动异常;
触发单元,用于在所述判断单元判断所述服务器启动异常时,触发所述服务器重新启动,并触发所述配置单元将正常的一个CPU或与正常PCH连接的一个CPU配置为主用CPU。
4.根据权利要求3所述的服务器中的控制设备,其特征在于,所述触发单元包括:
第一触发单元,用于在所述服务器启动异常时,通过所述BIOS预先设置的寄存器触发所述服务器重新启动;
第二触发单元,用于在所述服务器重新启动过程中,判断是否存在导致所述服务器启动异常的异常信息,在存在所述异常信息时,触发所述配置单元将正常的一个CPU或与正常PCH连接的一个CPU配置为主用CPU,所述异常信息是在所述服务器重启前由所述BIOS触发记录的信息。
5.根据权利要求1-4任一所述的服务器中的控制设备,其特征在于,所述服务器是支持硬分区功能的服务器,所述服务器中的CPU的管脚连接到所述控制设备中。
6.根据权利要求1-5任一所述的服务器中的控制设备,其特征在于,所述控制设备在所述服务器的复杂可编程逻辑器件CPLD或现场可编程门阵列FPGA中实现。
7.一种服务器控制方法,所述方法应用于服务器中,所述服务器包括至少两个中央处理器CPU和至少两个平台控制集线器PCH,每个所述PCH与至少一个所述CPU相连,其特征在于,所述方法包括:
配置所述CPU的标号,并将其中一个CPU标记为主用CPU;
判断所述服务器是否启动异常,如果启动异常则记录异常信息,并触发所述服务器重新启动;所述异常信息包括主用CPU、与主用CPU连接的PCH或与主用CPU连接的PCH相连的Flash异常导致的基本输入输出***BIOS启动异常;
在所述服务器重新启动过程中,根据所述记录的异常信息,将正常的CPU或与正常PCH连接的CPU配置为主用CPU。
8.根据权利要求7所述的服务器控制方法,其特征在于:
所述配置CPU的标号具体是配置所述CPU的管脚,所述将其中一个CPU标记为主用CPU,是通过配置所述管脚的值将其中一个CPU配置为主用CPU。
9.根据权利要求7或8所述的服务器控制方法,其特征在于,判断所述服务器是否启动异常包括:
设定定时器,所述定时器的时长小于所述服务器看门狗的定时器时长;
在所述服务器启动过程中,如果在所述定时器设定时间内所述看门狗未被禁止,则判定所述服务器启动异常。
10.根据权利要求7-9任一所述的服务器控制方法,其特征在于:
所述方法是由复杂可编程逻辑器件CPLD或现场可编程门阵列FPGA实现。
11.根据权利要求10所述的服务器控制方法,其特征在于:
所述触发服务器重新启动是通过设置在所述CPLD或所述FPGA中的重启寄存器触发所述服务器重新启动。
12.根据权利要求7-11任一所述的服务器控制方法,其特征在于:
服务器是支持硬分区功能的服务器,所述服务器中的CPU的管脚连接到所述CPLD或所述FPGA中。
CN201380002066.8A 2013-09-29 2013-09-29 服务器的控制方法和服务器的控制设备 Pending CN103733180A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510811081.8A CN105446833B (zh) 2013-09-29 2013-09-29 服务器的控制方法和服务器的控制设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2013/084638 WO2015042925A1 (zh) 2013-09-29 2013-09-29 服务器的控制方法和服务器的控制设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201510811081.8A Division CN105446833B (zh) 2013-09-29 2013-09-29 服务器的控制方法和服务器的控制设备

Publications (1)

Publication Number Publication Date
CN103733180A true CN103733180A (zh) 2014-04-16

Family

ID=50455935

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201380002066.8A Pending CN103733180A (zh) 2013-09-29 2013-09-29 服务器的控制方法和服务器的控制设备

Country Status (5)

Country Link
US (1) US10241868B2 (zh)
EP (1) EP2942712B1 (zh)
JP (1) JP6034990B2 (zh)
CN (1) CN103733180A (zh)
WO (1) WO2015042925A1 (zh)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105425918A (zh) * 2015-12-16 2016-03-23 英业达科技有限公司 微型服务器***
CN105549706A (zh) * 2015-12-11 2016-05-04 华为技术有限公司 一种热重启服务器的方法、装置及***
CN106446311A (zh) * 2015-08-10 2017-02-22 杭州华为数字技术有限公司 Cpu告警电路及告警方法
CN107003914A (zh) * 2016-10-31 2017-08-01 华为技术有限公司 启动物理设备的方法和使能装置
WO2017136986A1 (zh) * 2016-02-14 2017-08-17 华为技术有限公司 一种电源管理方法以及***
CN107273121A (zh) * 2017-06-07 2017-10-20 联想(北京)有限公司 一种智能设备重启的管理方法及装置
CN109600236A (zh) * 2019-01-30 2019-04-09 郑州云海信息技术有限公司 一种服务器按键控制方法、服务器及服务器***
CN111709032A (zh) * 2020-05-28 2020-09-25 苏州浪潮智能科技有限公司 一种在多种分区上实现pfr功能的方法、***、设备及介质
CN113468191A (zh) * 2021-06-04 2021-10-01 合肥联宝信息技术有限公司 一种数据更新的方法、装置、电子设备及计算机可读介质

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105843712B (zh) * 2016-03-31 2020-02-21 联想(北京)有限公司 一种数据传输方法及电子设备
CN107578515B (zh) * 2017-09-22 2020-10-27 联想(北京)有限公司 一种电子设备及电子锁的控制方法
US10846160B2 (en) * 2018-01-12 2020-11-24 Quanta Computer Inc. System and method for remote system recovery
CN110399277B (zh) * 2019-07-19 2023-08-22 广东浪潮大数据研究有限公司 一种基于数码管的主板上电状态显示***及方法
CN113672528B (zh) * 2020-05-15 2024-05-28 佛山市顺德区顺达电脑厂有限公司 可选择开机bios之控制电路
CN112905252A (zh) * 2021-02-20 2021-06-04 山东英信计算机技术有限公司 一种服务器bios启动项顺序的排序方法及介质
US11334452B1 (en) * 2021-06-08 2022-05-17 International Business Machines Corporation Performing remote part reseat actions

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101216793A (zh) * 2008-01-18 2008-07-09 华为技术有限公司 一种多处理器***故障恢复的方法及装置
CN103019323A (zh) * 2012-12-21 2013-04-03 浪潮电子信息产业股份有限公司 一种基于龙芯处理器的双子星计算机服务器
CN103077060A (zh) * 2013-01-10 2013-05-01 中兴通讯股份有限公司 主备用bios的切换方法及装置、***
CN103154916A (zh) * 2010-08-02 2013-06-12 英特尔公司 通过rfid的多槽口服务器管理

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0616617B2 (ja) * 1987-12-07 1994-03-02 富士通株式会社 初期条件設定方法
US5408647A (en) * 1992-10-02 1995-04-18 Compaq Computer Corporation Automatic logical CPU assignment of physical CPUs
US5748877A (en) * 1995-03-08 1998-05-05 Dell Usa, L.P. Method for executing embedded diagnostics from operating system-based applications
US5790850A (en) * 1996-09-30 1998-08-04 Intel Corporation Fault resilient booting for multiprocessor computer systems
JP2000076216A (ja) * 1998-09-02 2000-03-14 Nec Corp マルチプロセッサシステム及びそのプロセッサ二重化方法並びにその制御プログラムを記録した記録媒体
US6601165B2 (en) * 1999-03-26 2003-07-29 Hewlett-Packard Company Apparatus and method for implementing fault resilient booting in a multi-processor system by using a flush command to control resetting of the processors and isolating failed processors
US6920581B2 (en) * 2002-01-02 2005-07-19 Intel Corporation Method and apparatus for functional redundancy check mode recovery
US20040221198A1 (en) * 2003-04-17 2004-11-04 Vecoven Frederic Louis Ghislain Gabriel Automatic error diagnosis
JP4715311B2 (ja) * 2005-06-01 2011-07-06 株式会社日立製作所 Smpライセンス情報を有する情報処理装置
JP4665846B2 (ja) * 2006-06-21 2011-04-06 株式会社デンソー マイクロコンピュータ及び電子制御装置
US7886190B2 (en) * 2006-09-29 2011-02-08 Intel Corporation System and method for enabling seamless boot recovery
US8041227B2 (en) * 2006-11-16 2011-10-18 Silicon Laboratories Inc. Apparatus and method for near-field communication
JP5326269B2 (ja) * 2006-12-18 2013-10-30 大日本印刷株式会社 電子部品内蔵配線板、及び電子部品内蔵配線板の放熱方法
US7802042B2 (en) * 2007-12-28 2010-09-21 Intel Corporation Method and system for handling a management interrupt event in a multi-processor computing device
TWI474260B (zh) * 2009-02-16 2015-02-21 Asustek Comp Inc 電腦系統與其主機板上之記憶體電路和開機方法
US20100250822A1 (en) * 2009-03-28 2010-09-30 Hou-Yuan Lin Motherboard with Backup Chipset
US8117494B2 (en) * 2009-12-22 2012-02-14 Intel Corporation DMI redundancy in multiple processor computer systems
US8473717B2 (en) * 2010-02-03 2013-06-25 Arm Limited Coprocessor reset controller with queue for storing configuration information of subsequent sessions prior to completion of current session
US8386618B2 (en) * 2010-09-24 2013-02-26 Intel Corporation System and method for facilitating wireless communication during a pre-boot phase of a computing device
CN102446149A (zh) 2010-10-14 2012-05-09 上海研祥智能科技有限公司 一种能够实现紧凑型pci产品热插拔的处理方法以及***
TWI446161B (zh) * 2010-12-30 2014-07-21 Ibm 處理一多處理器資訊處理系統之一故障處理器的裝置及方法
JP2013054434A (ja) * 2011-09-01 2013-03-21 Fujitsu Ltd I/o制御装置およびi/o制御方法
CN102521209B (zh) 2011-12-12 2015-03-11 浪潮电子信息产业股份有限公司 一种并行多处理器计算机的设计方法
CN102768561B (zh) 2012-05-30 2015-02-04 曙光信息产业股份有限公司 一种双桥片主板冗余的设计方法
CN202838091U (zh) 2012-05-30 2013-03-27 曙光信息产业股份有限公司 一种支持sr5690冗余设计的双桥片主板

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101216793A (zh) * 2008-01-18 2008-07-09 华为技术有限公司 一种多处理器***故障恢复的方法及装置
CN103154916A (zh) * 2010-08-02 2013-06-12 英特尔公司 通过rfid的多槽口服务器管理
CN103019323A (zh) * 2012-12-21 2013-04-03 浪潮电子信息产业股份有限公司 一种基于龙芯处理器的双子星计算机服务器
CN103077060A (zh) * 2013-01-10 2013-05-01 中兴通讯股份有限公司 主备用bios的切换方法及装置、***

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106446311A (zh) * 2015-08-10 2017-02-22 杭州华为数字技术有限公司 Cpu告警电路及告警方法
CN106446311B (zh) * 2015-08-10 2019-09-13 杭州华为数字技术有限公司 Cpu告警电路及告警方法
CN105549706B (zh) * 2015-12-11 2018-12-07 华为技术有限公司 一种热重启服务器的方法、装置及***
CN105549706A (zh) * 2015-12-11 2016-05-04 华为技术有限公司 一种热重启服务器的方法、装置及***
WO2017096993A1 (zh) * 2015-12-11 2017-06-15 华为技术有限公司 一种热重启服务器的方法、装置及***
CN105425918A (zh) * 2015-12-16 2016-03-23 英业达科技有限公司 微型服务器***
WO2017136986A1 (zh) * 2016-02-14 2017-08-17 华为技术有限公司 一种电源管理方法以及***
CN111488048B (zh) * 2016-02-14 2023-05-16 华为技术有限公司 一种电源管理方法以及***
US11442526B2 (en) 2016-02-14 2022-09-13 Huawei Technologies Co., Ltd. Power management method and system
CN111488048A (zh) * 2016-02-14 2020-08-04 华为技术有限公司 一种电源管理方法以及***
US10782770B2 (en) 2016-02-14 2020-09-22 Huawei Technologies Co., Ltd. Power management method and system
WO2018076351A1 (zh) * 2016-10-31 2018-05-03 华为技术有限公司 启动物理设备的方法和使能装置
CN107003914A (zh) * 2016-10-31 2017-08-01 华为技术有限公司 启动物理设备的方法和使能装置
US11068348B2 (en) 2016-10-31 2021-07-20 Huawei Technologies Co., Ltd. Method and enable apparatus for starting physical device
CN107003914B (zh) * 2016-10-31 2020-11-13 华为技术有限公司 启动物理设备的方法和使能装置
EP3764234A1 (en) * 2016-10-31 2021-01-13 Huawei Technologies Co. Ltd. Method and enable apparatus for starting physical device
CN107273121B (zh) * 2017-06-07 2021-07-16 联想(北京)有限公司 一种智能设备重启的管理方法及装置
CN107273121A (zh) * 2017-06-07 2017-10-20 联想(北京)有限公司 一种智能设备重启的管理方法及装置
CN109600236A (zh) * 2019-01-30 2019-04-09 郑州云海信息技术有限公司 一种服务器按键控制方法、服务器及服务器***
CN111709032A (zh) * 2020-05-28 2020-09-25 苏州浪潮智能科技有限公司 一种在多种分区上实现pfr功能的方法、***、设备及介质
CN113468191A (zh) * 2021-06-04 2021-10-01 合肥联宝信息技术有限公司 一种数据更新的方法、装置、电子设备及计算机可读介质

Also Published As

Publication number Publication date
US10241868B2 (en) 2019-03-26
EP2942712A1 (en) 2015-11-11
JP2016518654A (ja) 2016-06-23
JP6034990B2 (ja) 2016-11-30
EP2942712A4 (en) 2016-10-19
WO2015042925A1 (zh) 2015-04-02
US20150205676A1 (en) 2015-07-23
EP2942712B1 (en) 2018-04-04

Similar Documents

Publication Publication Date Title
CN103733180A (zh) 服务器的控制方法和服务器的控制设备
JP6530774B2 (ja) ハードウェア障害回復システム
US9778844B2 (en) Installation of operating system on host computer using virtual storage of BMC
US9158628B2 (en) Bios failover update with service processor having direct serial peripheral interface (SPI) access
US9910664B2 (en) System and method of online firmware update for baseboard management controller (BMC) devices
US9680712B2 (en) Hardware management and control of computer components through physical layout diagrams
US20170090896A1 (en) Automatic system software installation on boot
US9448889B2 (en) BIOS failover update with service processor
US20070294582A1 (en) Reporting software RAID configuration to system BIOS
US9448808B2 (en) BIOS update with service processor without serial peripheral interface (SPI) access
US10606677B2 (en) Method of retrieving debugging data in UEFI and computer system thereof
US10430082B2 (en) Server management method and server for backup of a baseband management controller
WO2018095107A1 (zh) 一种bios程序的异常处理方法及装置
US7975084B1 (en) Configuring a host computer using a service processor
US10853213B2 (en) Validation of installation of removeable computer hardware components
US20200104140A1 (en) Systems and methods for identifying and protection of boot storage devices
CN104461402A (zh) 一种linux***下多控制器间调整磁盘顺序的方法
US9979799B2 (en) Impersonating a specific physical hardware configuration on a standard server
CN109117418A (zh) 一种可编程片上***
US9749189B2 (en) Generating graphical diagram of physical layout of computer platforms
US10996942B1 (en) System and method for graphics processing unit firmware updates
CN116627702A (zh) 虚拟机的宕机重启方法及装置
US20240028433A1 (en) Reporting pcie device error information
CN105446833A (zh) 服务器的控制方法和服务器的控制设备
US10684843B1 (en) Firmware updates using updated firmware files in a dedicated firmware volume

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20140416