CN116737185A - 一种镜像加载方法、装置、设备及介质 - Google Patents

一种镜像加载方法、装置、设备及介质 Download PDF

Info

Publication number
CN116737185A
CN116737185A CN202310717938.4A CN202310717938A CN116737185A CN 116737185 A CN116737185 A CN 116737185A CN 202310717938 A CN202310717938 A CN 202310717938A CN 116737185 A CN116737185 A CN 116737185A
Authority
CN
China
Prior art keywords
basic input
output system
chip
information
loading
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
CN202310717938.4A
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.)
Inspur Shandong Computer Technology Co Ltd
Original Assignee
Inspur Shandong Computer 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 Inspur Shandong Computer Technology Co Ltd filed Critical Inspur Shandong Computer Technology Co Ltd
Priority to CN202310717938.4A priority Critical patent/CN116737185A/zh
Publication of CN116737185A publication Critical patent/CN116737185A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/63Image based installation; Cloning; Build to order
    • 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
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种镜像加载方法、装置、设备及介质,涉及计算机技术领域,该方法应用于海光平台中的基板管理控制器,包括:若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的信息,则控制预设看门狗监控系统开始计时;判断在看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的信息;若未接收到,则将基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用备用芯片加载基本输入输出系统镜像;若接收到,则利用基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像。本发明实现海光平台中BIOS镜像冗余切换的实现方案,进行BIOS镜像的冗余设计。

Description

一种镜像加载方法、装置、设备及介质
技术领域
本发明涉及计算机技术领域,特别涉及一种镜像加载方法、装置、设备及介质。
背景技术
在计算机技术中,BIOS(即Basic Input Output System,基本输入输出系统)FLASH在计算机系统中是非常关键的部件,一旦BIOS Flash芯片(即闪存芯片)发生损坏,那么系统无法启动。对于服务器来说,整机的高可靠性、高可用性尤其重要,因此必须在设计之初就考虑BIOS镜像的冗余设计。
BIOS FLASH镜像冗余方案,有软件冗余和硬件冗余两种方案。软件冗余设计是在每个BIOS FLASH里面存2个镜像文件。硬件冗余要求采用双BIOS FLASH芯片,分别存储主备镜像。两种方案对比下来,硬件冗余方案的可靠性更强。同时BIOS FLASH镜像冗余方案在Intel平台应用比较成熟,但是在诸如海光处理器之类的国产平台应用还比较少。
现有技术中有通过启动BMC(即Baseboard Management Controller,基板管理控制器)的看门狗监控,判断系统开机时间是否大于预设系统开机时间,从而进行BIOS Flash的切换;和采用软件冗余设计,将两个BIOS固件烧录在存储芯片的不同位置,根据主板上的一个IO(即Input/Output,输入/输出)引脚的电平高低启动不同的BIOS镜像。但上述两种方法都是针对Intel平台的设计,Intel平台和海光平台的硬件接口和传递BIOS加载状态的方式均有所不同。
由上可见,在BIOS FLASH镜像冗余设计过程中,如何在海光平台中实现高可靠性冗余设计是本领域有待解决的问题。
发明内容
有鉴于此,本发明的目的在于提供一种镜像加载方法、装置、设备及介质,针对目前海光处理器的支持现状,提出在海光平台上BIOS双镜像切换的方法。其具体方案如下:
第一方面,本申请公开了一种镜像加载方法,应用于海光平台中的基板管理控制器,包括:
若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时;
判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息;
若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像;
若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像。
可选的,所述判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息之前,还包括:
若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片。
可选的,所述若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,包括:
若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则生成用于切换闪存芯片的片选信号的目标命令;
通过预先基于内部集成电路建立的通信链路将所述用于切换闪存芯片的片选信号的所述目标命令发送至复杂可编程逻辑器件,以便所述复杂可编程逻辑器件接收到所述目标命令后将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片;其中,所述通信链路为所述海光平台中所述基板管理控制器与中央处理器之间的链路;
确定所述目标命令的命令生成时间与将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片的芯片切换时间;
基于所述命令生成时间、所述芯片切换时间、被切换的芯片信息以及当前使用的芯片信息生成芯片切换日志;
将所述芯片切换日志存放至预设日志存放位置。
可选的,所述若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时之前,还包括:
设定用于表征基本输入输出系统是否加载到内存的第一标志位,和用于表征基本输入输出系统上电自检是否完成的第二标志位。
可选的,所述若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像,包括:
若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像,以将中央处理器开机;
相应的,所述若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像,包括:
若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像,以将中央处理器开机。
可选的,所述若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像,以将中央处理器开机,包括:
若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并向中央处理器发送复位信息,利用所述备用芯片加载基本输入输出系统镜像,以将所述中央处理器开机。
可选的,所述判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息,包括:
判断在所述看门狗监控系统的计时时长满足预设时长之前,是否接收到中央处理器通过精简引脚总线接口发送的基本输入输出系统的状态信息,以及所述状态信息中是否包括表征所述基本输入输出系统上电自检完成的第二信息。
第二方面,本申请公开了一种镜像加载装置,应用于海光平台中的基板管理控制器,包括:
第一信息接收模块,用于若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时;
信息判断模块,用于判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息;
第一镜像加载模块,用于若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像;
第二镜像加载模块,用于若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的镜像加载方法。
第四方面,本申请公开了一种计算机存储介质,用于保存计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的镜像加载方法的步骤。
本申请中,若海光平台中的基板管理控制器接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时;判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息;若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像;若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像。这样一来,本发明通过配置两个侦测点确定基本输入输出系统的运行状态,并基于基本输入输出系统的运行状态实现芯片切换与后续的镜像加载过程,以保证CPU正常开机。即,本发明实现了一种海光平台中BIOS镜像的冗余切换的实现方案,进行BIOS镜像的冗余设计,提供服务器的可靠性,相比原有单纯依靠开机时间判断的设计方案,本发明的判断更准确,避免服务器外插部件较多、系统开机较慢导致错切BIOS镜像的问题。同时相对软件冗余来说,这种硬件冗余的具备更强可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请提供的一种镜像加载方法流程图;
图2为本申请提供的一种具体的镜像加载方法流程图;
图3为本申请提供的一种镜像加载装置结构示意图;
图4为本申请提供的一种电子设备结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
现有技术中有通过启动BMC的看门狗监控,判断系统开机时间是否大于预设系统开机时间,从而进行BIOS Flash的切换;和采用软件冗余设计,将两个BIOS固件烧录在存储芯片的不同位置,根据主板上的一个IO引脚的电平高低启动不同的BIOS镜像的设计方案。但上述两种方法都是针对Intel平台的设计,Intel平台和海光平台的硬件接口和传递BIOS加载状态的方式均有所不同。在本申请中,进行BIOS镜像的冗余设计,包括一种BIOS镜像切换的判断方案,提供服务器的可靠性,相比原有单纯依靠开机时间判断的设计方案,该发明的判断更准确,避免服务器外插部件较多、系统开机较慢导致错切BIOS镜像的问题。同时相对软件冗余来说,硬件冗余提供了更强可靠性。
本发明实施例公开了一种镜像加载方法,应用于海光平台中的基板管理控制器,参见图1所述,该方法包括:
步骤S11:若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时。
海光平台中主要通过LPC(即LowPinCountBus,精简引脚总线)接口和BMC交互信息,传递BIOS加载的状态给BMC,BMC进行监测、判断和切换Flash芯片的动作。
CPU(即Central Processing Unit,中央处理器)启动分为两阶段,第一阶段中大部分硬件都没有初始化完成,该阶段BMC通过I2C(即Inter-Integrated Circuit,内部集成电路)来获取CPU状态。进入第二阶段后,LPC接口初始化完成,CPU通过LPC接口上报BMC的状态信息即post code给BMC,BMC据此信息来判断BIOS的加载状态。
本实施例中,所述若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时之前,还可以包括:设定用于表征基本输入输出系统是否加载到内存的第一标志位,和用于表征基本输入输出系统上电自检是否完成的第二标志位。也即,本发明中设置了两个侦测点,具体的实施方式中,BIOS加载到内存执行第一行代码给BMC第一个标志位,BIOS Post Complete后给到BMC第二个标志位。本步骤中所述第一信息中包括所述第一标志位更新信息,后续所述第二信息中包括所述第二标志位更新信息。
本实施例中,还可以包括:若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片。本实施例中,在基本输入输出系统中设定了两个flash芯片实现双镜像配置,当镜像加载运行过程中存在异常时,可以切换另一flash芯片继续工作。
本实施例中,BMC中会设置看门狗系统,从接收到开机信号开始计时,到接收到BIOS_complete信号为止均执行监控任务。
本实施例中,当BIOS加载至内存执行第一行代码时,则将第一标志为更新为1,当BMC未接收到所述第一信息或所述第一信息中第一标志为0时,则表明BIOS加载异常,需要切换BIOS ROM(即read only memory,只读存储器),以使用另一flash芯片实现后续的镜像加载,完成CPU启动。
本实施例中,所述若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,可以包括:若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则生成用于切换闪存芯片的片选信号的目标命令;通过预先基于内部集成电路建立的通信链路将所述用于切换闪存芯片的片选信号的所述目标命令发送至复杂可编程逻辑器件,以便所述复杂可编程逻辑器件接收到所述目标命令后将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片;其中,所述通信链路为所述海光平台中所述基板管理控制器与中央处理器之间的链路;确定所述目标命令的命令生成时间与将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片的芯片切换时间;基于所述命令生成时间、所述芯片切换时间、被切换的芯片信息以及当前使用的芯片信息生成芯片切换日志;将所述芯片切换日志存放至预设日志存放位置。
可以理解的是,本实施例中,第一标志位如果为0或者在规定时间内未收到BIOS的第一标志位,则说明BIOS加载异常,需要切换BIOS ROM,BMC需要通过I2C链路发命令给CPLD(即Complex Programmable Logic Device,复杂可编程逻辑器件),CPLD进行flash芯片片选信号的切换,从而切换不同的flash芯片。每次切换BIOS ROM,BMC需要有相应的日志记录用来提醒客户进行维护。具体的,所述日志中记录的信息可以包括但不限于命令生成时间、芯片切换时间、被切换的芯片信息以及当前使用的芯片信息。
步骤S12:判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息。
本实施例中,所述判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息,可以包括:判断在所述看门狗监控系统的计时时长满足预设时长之前,是否接收到中央处理器通过精简引脚总线接口发送的基本输入输出系统的状态信息,以及所述状态信息中是否包括表征所述基本输入输出系统上电自检完成的第二信息。
本实施例中CPU主要通过LPC接口和BMC交互信息,传递BIOS加载的状态信息给BMC,具体的,CPU可以通过LPC接口上报post code(即一种BIOS的状态信息)给BMC。
步骤S13:若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像。
步骤S14:若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像。
本实施例中,若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则表明BIOS加载正常,CPU按照当前的flash芯片正常开机。具体的实施方式中,post code中的标志位如果为1且看门狗系统计时的时间未超时,则说明BIOS加载正常,CPU按照当前的flash芯片正常开机。
本实施例中,若海光平台中的基板管理控制器接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时;判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息;若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像;若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像。这样一来,本发明通过配置两个侦测点确定基本输入输出系统的运行状态,并基于基本输入输出系统的运行状态实现芯片切换与后续的镜像加载过程。即,本实施例中实现了一种海光平台中BIOS镜像的冗余切换的实现方案,进行BIOS镜像的冗余设计,提供服务器的可靠性,相比原有单纯依靠开机时间判断的设计方案,本发明的判断更准确,避免服务器外插部件较多、系统开机较慢导致错切BIOS镜像的问题。同时相对软件冗余来说,这种硬件冗余的具备更强可靠性。
图2为本申请实施例提供的一种具体的镜像加载方法流程图。参见图2所示,该方法包括:
步骤S21:若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时。
其中,关于步骤S21的更加具体的处理过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
步骤S22:判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息。
其中,关于步骤S22的更加具体的处理过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
步骤S23:若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并向中央处理器发送复位信息,利用所述备用芯片加载基本输入输出系统镜像,以将所述中央处理器开机。
本实施例中,CPLD切换完flash芯片的片选信号后,可以通知CPU进行复位,从备用的flash芯片中加载镜像,从而完成CPU正常开机。
步骤S24:若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像,以将中央处理器开机。
可以理解的是,同样本实施例中,利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像后,CPU便可完成正常开机。
本实施例中,若海光平台中的基板管理控制器若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时。判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息。若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并向中央处理器发送复位信息,利用所述备用芯片加载基本输入输出系统镜像,以将所述中央处理器开机。若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像,以将中央处理器开机。这样一来,本发明通过配置两个侦测点确定基本输入输出系统的运行状态,并基于基本输入输出系统的运行状态实现芯片切换与后续的镜像加载过程,以保证CPU正常开机。即,本实施例中实现了一种海光平台中BIOS镜像的冗余切换的实现方案,进行BIOS镜像的冗余设计,提供服务器的可靠性,相比原有单纯依靠开机时间判断的设计方案,本发明的判断更准确,避免服务器外插部件较多、系统开机较慢导致错切BIOS镜像的问题。同时相对软件冗余来说,这种硬件冗余的具备更强可靠性。
参见图3所示,本申请实施例公开了一种镜像加载装置,应用于海光平台中的基板管理控制器,具体可以包括:
第一信息接收模块11,用于若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时;
信息判断模块12,用于判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息;
第一镜像加载模块13,用于若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像;
第二镜像加载模块14,用于若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像。
本申请中,若海光平台中的基板管理控制器接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时;判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息;若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像;若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像。这样一来,本发明通过配置两个侦测点确定基本输入输出系统的运行状态,并基于基本输入输出系统的运行状态实现芯片切换与后续的镜像加载过程,以保证CPU正常开机。即,本发明实现了一种海光平台中BIOS镜像的冗余切换的实现方案,进行BIOS镜像的冗余设计,提供服务器的可靠性,相比原有单纯依靠开机时间判断的设计方案,本发明的判断更准确,避免服务器外插部件较多、系统开机较慢导致错切BIOS镜像的问题。同时相对软件冗余来说,这种硬件冗余的具备更强可靠性。
在一些具体实施例中,所述镜像加载装置,还包括:
第一芯片切换单元,用于若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片。
在一些具体实施例中,所述第一镜像加载模块13,包括:
命令生成单元,用于若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则生成用于切换闪存芯片的片选信号的目标命令;
第二芯片切换单元,用于通过预先基于内部集成电路建立的通信链路将所述用于切换闪存芯片的片选信号的所述目标命令发送至复杂可编程逻辑器件,以便所述复杂可编程逻辑器件接收到所述目标命令后将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片;其中,所述通信链路为所述海光平台中所述基板管理控制器与中央处理器之间的链路;
信息确定单元,用于确定所述目标命令的命令生成时间与将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片的芯片切换时间;
日志生成单元,用于基于所述命令生成时间、所述芯片切换时间、被切换的芯片信息以及当前使用的芯片信息生成芯片切换日志;
日志存放单元,用于将所述芯片切换日志存放至预设日志存放位置。
在一些具体实施例中,所述镜像加载装置,还包括:
标志位设定单元,用于设定用于表征基本输入输出系统是否加载到内存的第一标志位,和用于表征基本输入输出系统上电自检是否完成的第二标志位。
在一些具体实施例中,所述第一镜像加载模块13,包括:
第二信息未接受单元,用于若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像,以将中央处理器开机;
相应的,所述第二镜像加载模块14,包括:
第二信息接收单元,用于若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像,以将中央处理器开机。
在一些具体实施例中,所述第二信息未接受单元,具体用于若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并向中央处理器发送复位信息,利用所述备用芯片加载基本输入输出系统镜像,以将所述中央处理器开机。
在一些具体实施例中,所述信息判断模块12,包括:
状态信息处理单元,用于判断在所述看门狗监控系统的计时时长满足预设时长之前,是否接收到中央处理器通过精简引脚总线接口发送的基本输入输出系统的状态信息,以及所述状态信息中是否包括表征所述基本输入输出系统上电自检完成的第二信息。
进一步的,本申请实施例还公开了一种电子设备,图4是根据示例性实施例示出的电子设备20结构图,图中的内容不能认为是对本申请的使用范围的任何限制。
图4为本申请实施例提供的一种电子设备20的结构示意图。该电子设备20,具体可以包括:至少一个处理器21、至少一个存储器22、电源23、显示屏24、输入输出接口25、通信接口26和通信总线27。其中,所述存储器22用于存储计算机程序,所述计算机程序由所述处理器21加载并执行,以实现前述任一实施例公开的镜像加载方法中的相关步骤。另外,本实施例中的电子设备20具体可以为电子计算机。
本实施例中,电源23用于为电子设备20上的各硬件设备提供工作电压;通信接口26能够为电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
另外,存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,其上所存储的资源可以包括操作系统221、计算机程序222及虚拟机数据223等,虚拟机数据223可以包括各种各样的数据。存储方式可以是短暂存储或者永久存储。
其中,操作系统221用于管理与控制电子设备20上的各硬件设备以及计算机程序222,其可以是Windows Server、Netware、Unix、Linux等。计算机程序222除了包括能够用于完成前述任一实施例公开的由电子设备20执行的镜像加载方法的计算机程序之外,还可以进一步包括能够用于完成其他特定工作的计算机程序。
进一步的,本申请还公开了一种计算机可读存储介质,这里所说的计算机可读存储介质包括随机存取存储器(Random Access Memory,RAM)、内存、只读存储器(Read-OnlyMemory,ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、磁碟或者光盘或技术领域内所公知的任意其他形式的存储介质。其中,所述计算机程序被处理器执行时实现前述公开的镜像加载方法。关于该方法的具体步骤可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上对本发明所提供的镜像加载方法、装置、设备、存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种镜像加载方法,其特征在于,应用于海光平台中的基板管理控制器,包括:
若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时;
判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息;
若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像;
若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像。
2.根据权利要求1所述的镜像加载方法,其特征在于,所述判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息之前,还包括:
若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片。
3.根据权利要求2所述的镜像加载方法,其特征在于,所述若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,包括:
若未接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则生成用于切换闪存芯片的片选信号的目标命令;
通过预先基于内部集成电路建立的通信链路将所述用于切换闪存芯片的片选信号的所述目标命令发送至复杂可编程逻辑器件,以便所述复杂可编程逻辑器件接收到所述目标命令后将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片;其中,所述通信链路为所述海光平台中所述基板管理控制器与中央处理器之间的链路;
确定所述目标命令的命令生成时间与将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片的芯片切换时间;
基于所述命令生成时间、所述芯片切换时间、被切换的芯片信息以及当前使用的芯片信息生成芯片切换日志;
将所述芯片切换日志存放至预设日志存放位置。
4.根据权利要求1所述的镜像加载方法,其特征在于,所述若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时之前,还包括:
设定用于表征基本输入输出系统是否加载到内存的第一标志位,和用于表征基本输入输出系统上电自检是否完成的第二标志位。
5.根据权利要求1所述的镜像加载方法,其特征在于,所述若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像,包括:
若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像,以将中央处理器开机;
相应的,所述若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像,包括:
若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像,以将中央处理器开机。
6.根据权利要求5所述的镜像加载方法,其特征在于,所述若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像,以将中央处理器开机,包括:
若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并向中央处理器发送复位信息,利用所述备用芯片加载基本输入输出系统镜像,以将所述中央处理器开机。
7.根据权利要求1至6任一项所述的镜像加载方法,其特征在于,所述判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息,包括:
判断在所述看门狗监控系统的计时时长满足预设时长之前,是否接收到中央处理器通过精简引脚总线接口发送的基本输入输出系统的状态信息,以及所述状态信息中是否包括表征所述基本输入输出系统上电自检完成的第二信息。
8.一种镜像加载装置,其特征在于,应用于海光平台中的基板管理控制器,包括:
第一信息接收模块,用于若接收到基本输入输出系统加载到内存时控制第一标志位更新为目标状态后发送的第一信息,则控制预设看门狗监控系统开始计时;
信息判断模块,用于判断在所述看门狗监控系统的计时时长满足预设时长之前是否接收到表征基本输入输出系统上电自检完成后发送的第二信息;
第一镜像加载模块,用于若在所述看门狗监控系统的计时时长满足预设时长之前未接收到所述第二信息,则将所述基本输入输出系统当前对应的闪存芯片切换为备用芯片,并利用所述备用芯片加载基本输入输出系统镜像;
第二镜像加载模块,用于若在所述看门狗监控系统的计时时长满足预设时长之前接收到所述第二信息,则利用所述基本输入输出系统当前的闪存芯片加载基本输入输出系统镜像。
9.一种电子设备,其特征在于,包括处理器和存储器;其中,所述处理器执行所述存储器中保存的计算机程序时实现如权利要求1至7任一项所述的镜像加载方法。
10.一种计算机可读存储介质,其特征在于,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的镜像加载方法。
CN202310717938.4A 2023-06-16 2023-06-16 一种镜像加载方法、装置、设备及介质 Pending CN116737185A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310717938.4A CN116737185A (zh) 2023-06-16 2023-06-16 一种镜像加载方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310717938.4A CN116737185A (zh) 2023-06-16 2023-06-16 一种镜像加载方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN116737185A true CN116737185A (zh) 2023-09-12

Family

ID=87902492

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310717938.4A Pending CN116737185A (zh) 2023-06-16 2023-06-16 一种镜像加载方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN116737185A (zh)

Similar Documents

Publication Publication Date Title
WO2022198972A1 (zh) 一种服务器启动过程中的故障定位方法、系统及装置
US20070174689A1 (en) Computer platform embedded operating system backup switching handling method and system
CN103324495A (zh) 数据中心服务器开机管理方法及系统
RU2602378C9 (ru) Стойка с множеством модулей управления стойкой и способ обновления встроенного программного обеспечения, используемого для стойки
US10089162B2 (en) Method for maintaining file system of computer system
CN113672306B (zh) 服务器组件自检异常恢复方法、装置、系统及介质
CN111966559A (zh) 一种故障恢复方法、装置、电子设备和存储介质
CN111488246A (zh) 一种cpld升级方法、装置、电子设备和可读存储介质
CN116737185A (zh) 一种镜像加载方法、装置、设备及介质
CN111078454A (zh) 一种云平台配置恢复方法及装置
CN114237722B (zh) 一种系统的启动方法、装置、设备及工程车辆
CN116032735A (zh) 一种交换机异常信息确定方法、装置、设备及介质
CN117215859B (zh) 主备bios自动切换方法、自动切换装置和计算机
CN111400094A (zh) 一种服务器系统恢复出厂设置的方法、装置、设备及介质
CN116991710B (zh) 自动测试方法及其系统、电子设备、存储介质
CN116431291B (zh) 一种虚拟化管理平台的部署方法、系统、设备及存储介质
CN116893833A (zh) 远程升级复杂可编程逻辑器件操作系统、方法及介质
CN116541211A (zh) 键盘控制器样式接口故障冗余方法和装置
CN115758384A (zh) 嵌入式设备的启动方法、设备及介质
CN116248585A (zh) 一种通信方法、装置、设备及存储介质
CN116301960A (zh) 一种新的主动更新固件的方法、装置、设备和介质
CN114465880A (zh) 一种基于bmc的故障网口确认方法、装置及介质
CN113687998A (zh) 排除管理引擎运作异常的控制方法
CN114168393A (zh) 一种服务器测试方法、系统、设备以及介质
CN118069205A (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