CN105653376B - Arm平台中bios与bmc同时启动时保证信息同步的优化方法 - Google Patents

Arm平台中bios与bmc同时启动时保证信息同步的优化方法 Download PDF

Info

Publication number
CN105653376B
CN105653376B CN201610001571.6A CN201610001571A CN105653376B CN 105653376 B CN105653376 B CN 105653376B CN 201610001571 A CN201610001571 A CN 201610001571A CN 105653376 B CN105653376 B CN 105653376B
Authority
CN
China
Prior art keywords
bmc
bios
flag
value
read
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.)
Active
Application number
CN201610001571.6A
Other languages
English (en)
Other versions
CN105653376A (zh
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 Electronic Information Industry Co Ltd
Original Assignee
Inspur Electronic Information Industry 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 Electronic Information Industry Co Ltd filed Critical Inspur Electronic Information Industry Co Ltd
Priority to CN201610001571.6A priority Critical patent/CN105653376B/zh
Publication of CN105653376A publication Critical patent/CN105653376A/zh
Application granted granted Critical
Publication of CN105653376B publication Critical patent/CN105653376B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了ARM平台中BIOS与BMC同时启动时保证信息同步的优化算法,所述算法在BMC启动完成的时候设置一个FLAG,在BIOS开始第一次访问BMC的时候通过IPMI去读取这个FLAG,如果FLAG被设置好,那么就开始读取BMC,如果没有被设置好,那么就去读取CPU Power Fail寄存器的值,如果CPU Power Fail寄存器的值为1,那么延迟较长时间,然后再返回读取BMC的FLAG,如果CPU Power Fail寄存器的值为0,那么延迟较短时间,然后再返回读取BMC的FLAG,直到读取到正确的FLAG的值。本发明能提高产品质量,完善产品功能,减少Bug的产生,且不会增加硬件器件和线路,完全由UEFI BIOS的软件代码完成,所有服务器均可实现。

Description

ARM平台中BIOS与BMC同时启动时保证信息同步的优化方法
技术领域
本发明涉及ARM平台服务器,存储器设计技术领域,具体涉及一种ARM平台中BIOS与BMC同时启动时保证信息同步的优化方法。
背景技术
在ARM服务器主板的设计当中,有一种设定就是当主机插入AC电源之后,系统会自动开机,直至引导入操作系统,这种情况下,主板BIOS在BMC做完基本的power sequence后,就和BMC同步启动,这其实能节省整个系统的启动时间,用户体验较好一些,还有一种做法就是BIOS和BMC不同步启动,等待BMC完全启动之后,才允许用户按Power Button开机,启动BIOS,这样的设计对保证BIOS对BMC信息的正确访问是很有帮助的,但是同时也延长了系统的启动时间,BMC启动大概30s—60之间,在这期间用户按power button是不起作用的,等BMC完全启动后,按power Button才会启动BIOS,这种情况下用户体验很不好。
但是对于BIOS和BMC同步启动这种情况,虽然能减少启动时间,但是也有一个缺点,BIOS启动过程中要通过IPMI访问BMC,同步启动就容易造成BIOS访问BMC失败的情况,因为有可能这个时候BMC的data还没有准备好,造成BMC返回错误的数据,为了避免这种情况的发生,我们一般在BIOS开始第一次访问BMC的时候,加上一个delay的时间,等待BMC差不多启动完成后,BIOS再接着往下走,以避免访问BMC失败,但是这种方法有缺陷,就是delay的时间是固定的,万一BMC在这个delay的时间之后,仍有一些数据没有准备好,仍然可能会出现问题。
发明内容
本发明要解决的技术问题是:为了解决上述问题,本发明提出了ARM平台中BIOS与BMC同时启动时保证信息同步的优化方法。
本发明所采用的技术方案为:
ARM平台中BIOS与BMC同时启动时保证信息同步的优化方法,所述方法在BMC启动完成的时候设置一个FLAG,在BIOS开始第一次访问BMC的时候通过IPMI去读取这个FLAG,如果FLAG被设置好,那么就开始读取BMC,如果没有被设置好,那么就去读取CPU Power Fail寄存器的值(其中记录了CPU在这次开机前有没有掉电的情况,如果CPU AC被拔掉过,此寄存器的值会被置位),如果CPU Power Fail寄存器的值为1,那么延迟较长时间(如delay30s),然后再返回读取BMC的FLAG,如果CPU Power Fail寄存器的值为0,那么延迟较短时间(如delay 1s),(CPU没有掉电,所以BMC仍在运行,不需要等待那么久),然后再返回读取BMC的FLAG,直到读取到正确的FLAG的值。
所述方法具体的实现过程如下:
S10:BMC启动完成,设置一个FLAG;
S11:BIOS开始第一次访问BMC,通过IPMI去读取这个FLAG,如果FLAG没被设置好;
S12:BIOS读取CPU Power Fail寄存器的值,如果CPU Power Fail寄存器的值为1,那么delay 30s,然后返回S10;
S13:如果CPU Power Fail寄存器的值为0,那么delay 1s,然后返回S10。
当FLAG被设置好时,FLAG=1。
本发明的有益效果为:
本发明能提高产品质量,完善产品功能,减少Bug的产生,且不会增加硬件器件和线路,完全由UEFI BIOS的软件代码完成,所有服务器均可实现。
附图说明
图1为本发明方法流程图。
具体实施方式
下面根据说明书附图,结合具体实施方式对本发明进一步说明:
实施例1:
如图1所示,ARM平台中BIOS与BMC同时启动时保证信息同步的优化方法,所述方法在BMC启动完成的时候设置一个FLAG,在BIOS开始第一次访问BMC的时候通过IPMI去读取这个FLAG,如果FLAG被设置好,那么就开始读取BMC,如果没有被设置好,那么就去读取CPUPower Fail寄存器的值(其中记录了CPU在这次开机前有没有掉电的情况,如果CPU AC被拔掉过,此寄存器的值会被置位),如果CPU Power Fail寄存器的值为1,那么延迟较长时间(如delay 30s),然后再返回读取BMC的FLAG,如果CPU Power Fail寄存器的值为0,那么延迟较短时间(如delay 1s),(CPU没有掉电,所以BMC仍在运行,不需要等待那么久),然后再返回读取BMC的FLAG,直到读取到正确的FLAG的值。
实施例2:
在实施例1的基础上,本实施例所述方法具体的实现过程如下:
S10:BMC启动完成,设置一个FLAG;
S11:BIOS开始第一次访问BMC,通过IPMI去读取这个FLAG,如果FLAG没被设置好;
S12:BIOS读取CPU Power Fail寄存器的值,如果CPU Power Fail寄存器的值为1,那么delay 30s,然后返回S10;
S13:如果CPU Power Fail寄存器的值为0,那么delay 1s,然后返回S10。
实施例3:
在实施例2的基础上,本实施例当FLAG被设置好时,FLAG=1。
以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

Claims (2)

1.ARM平台中BIOS与BMC同时启动时保证信息同步的优化方法,其特征在于:所述方法在BMC启动完成的时候设置一个FLAG,在BIOS开始第一次访问BMC的时候通过IPMI去读取这个FLAG,如果FLAG被设置好,那么就开始读取BMC,如果没有被设置好,那么就去读取CPUPower Fail寄存器的值,如果CPU Power Fail寄存器的值为1,那么延迟30秒,然后再返回读取BMC的FLAG,如果CPU Power Fail寄存器的值为0,那么延迟1秒,然后再返回读取BMC的FLAG,直到读取到正确的FLAG的值。
2.根据权利要求1所述的ARM平台中BIOS与BMC同时启动时保证信息同步的优化方法,其特征在于,当FLAG被设置好时,FLAG=1。
CN201610001571.6A 2016-01-05 2016-01-05 Arm平台中bios与bmc同时启动时保证信息同步的优化方法 Active CN105653376B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610001571.6A CN105653376B (zh) 2016-01-05 2016-01-05 Arm平台中bios与bmc同时启动时保证信息同步的优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610001571.6A CN105653376B (zh) 2016-01-05 2016-01-05 Arm平台中bios与bmc同时启动时保证信息同步的优化方法

Publications (2)

Publication Number Publication Date
CN105653376A CN105653376A (zh) 2016-06-08
CN105653376B true CN105653376B (zh) 2018-12-14

Family

ID=56491395

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610001571.6A Active CN105653376B (zh) 2016-01-05 2016-01-05 Arm平台中bios与bmc同时启动时保证信息同步的优化方法

Country Status (1)

Country Link
CN (1) CN105653376B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106200847A (zh) * 2016-08-03 2016-12-07 浪潮电子信息产业股份有限公司 一种ARM平台实现Clear CMOS功能的方法
CN109885151A (zh) * 2019-01-31 2019-06-14 郑州云海信息技术有限公司 一种服务器电源监控方法及系统
CN110399167B (zh) * 2019-06-28 2021-01-15 联想(北京)有限公司 固件启动方法及装置、设备、存储介质
CN111143132B (zh) * 2019-12-30 2022-06-10 山东英信计算机技术有限公司 一种bios恢复方法、装置、设备及可读存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101008906A (zh) * 2006-01-25 2007-08-01 英业达股份有限公司 切换失效的检测方法
CN102298414A (zh) * 2010-06-22 2011-12-28 鸿富锦精密工业(深圳)有限公司 服务器时间同步系统
CN103365696A (zh) * 2013-08-01 2013-10-23 华为技术有限公司 Bios镜像文件获取方法及装置
US8601252B2 (en) * 2008-09-08 2013-12-03 Dell Products, Lp Method and system for automatically restarting an information handling system to restore system configuration after disorderly shutdown indicated by setting a latch

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7194614B2 (en) * 2004-03-09 2007-03-20 Inventec Corporation Boot swap method for multiple processor computer systems
JP2009217711A (ja) * 2008-03-12 2009-09-24 Mitsubishi Electric Corp 情報処理装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101008906A (zh) * 2006-01-25 2007-08-01 英业达股份有限公司 切换失效的检测方法
US8601252B2 (en) * 2008-09-08 2013-12-03 Dell Products, Lp Method and system for automatically restarting an information handling system to restore system configuration after disorderly shutdown indicated by setting a latch
CN102298414A (zh) * 2010-06-22 2011-12-28 鸿富锦精密工业(深圳)有限公司 服务器时间同步系统
CN103365696A (zh) * 2013-08-01 2013-10-23 华为技术有限公司 Bios镜像文件获取方法及装置

Also Published As

Publication number Publication date
CN105653376A (zh) 2016-06-08

Similar Documents

Publication Publication Date Title
CN105653376B (zh) Arm平台中bios与bmc同时启动时保证信息同步的优化方法
CN105630465B (zh) 应用于终端的显示屏参数设置方法及终端
CN110825495A (zh) 一种容器云平台的恢复方法、装置、设备及可读存储介质
US9858098B2 (en) Hypervisor modification of system tables
CN110162435B (zh) 一种服务器pxe启动测试方法、系统、终端及存储介质
CN110572464A (zh) 底层资源状态同步方法、装置、云平台系统及存储介质
CN102298414A (zh) 服务器时间同步系统
KR101674975B1 (ko) 시스템 업그레이드 방법, 장치, 기기, 프로그램 및 기록매체
EP2189906A1 (en) Method and apparatus for abnormality recovering of data card, and data card
CN111736906A (zh) 一种基于bios的启动项同步存储方法、系统、终端及存储介质
CN103150188A (zh) 非x86指令集计算机的x86兼容显卡快速初始化方法
WO2019144621A1 (zh) 一种获取uefi os启动项的方法、装置及服务器
CN113672263A (zh) 固件参数更新控制方法、装置及电子设备
WO2012079351A1 (zh) 多线程数据同步方法及装置
TWI352281B (en) Method for judging a rebooting action of a compute
US20100005479A1 (en) Synchronization of event handlers
CN115168130A (zh) 一种芯片测试方法、装置、电子设备及存储介质
CN109325199A (zh) 一种利用编程语言减少网页重绘次数的方法以及电子设备
US10007529B2 (en) Data terminal running mode switching method, device, and data terminal
CN109669905B (zh) 一种pcie设备的热移除方法、系统及相关装置
CN112527446A (zh) 时区同步方法、设备及终端设备
US9563931B2 (en) Control method and information processing device
CN108052353B (zh) 一种提高bios控制模块同步速度的方法及设备
CN107562582B (zh) 一种自动重启并检测系统配置的方法
CN105071952A (zh) 一种设置双主板olt设备主备关系的方法及设备

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant