计算器系统的启动方法

文档序号:6630075阅读:425来源:国知局
计算器系统的启动方法
【专利摘要】本发明提供一种计算器系统的启动方法,包含有启动该计算器系统的一基板管理控制器;该基板管理控制器加载一实时时钟(real time clock)驱动,其中该实时时钟驱动用来启动一实时时钟功能;于该实时时钟驱动加载后,检查该基板管理控制器的一实时时钟缓存器的一实时时钟致能字段;若该实时时钟致能字段的状态为禁能,则致能该实时时钟缓存器的一实时时钟更新字段并将该实时时钟缓存器的一时间戳清零;该基板管理控制器从该实时时钟缓存器中获取该时间戳;以及若该时间戳晚于一预设时间,则该基板管理控制器启动完成。
【专利说明】计算器系统的启动方法

【技术领域】
[0001]本发明提供一种计算器系统的启动方法,尤指一种可解决由于一交流电源断电所导致系统异常的计算器系统的启动方法。

【背景技术】
[0002]一基板管理控制器(Baseboard Management Controller, BMC)藉由各别的界面来管理整个系统,如系统状态侦测及事件过滤、电源管理、记录事件发生时间及系统回复控制,并且透过网络或串行端口来告知管理人员。另外,基板管理控制器提供了一智能平台管理总线(Intelligent Platform Management Bus, IPMB)来和外部的管理控制器互相沟通。
[0003]在系统开机自我检测(Power-on self-test, POST)过程中,基本输入输出系统(Basic Input Output System,B1S)会把系统日期和时间送给基板管理控制器,基板管理控制器又把这个日期和时间存到一实时时钟(Real Time Clock, RTC)缓存器里,实时时钟缓存器里的值会随着时间自动更新,保持一个正确的值。在线升级基板管理控制器的固件后,在基板管理控制器启动阶段,基板管理控制器会从实时时钟缓存器里面取回这个值作为自己的时间。如此一来,后续基板管理控制器记录工作纪录(event log)的时候就能保证工作纪录的时间戳是正确的。
[0004]在系统做交流电源周期(AC Power Cycle)之后,由于交流电源断电后,实时时钟缓存器里的值变成了一个不正确的日期时间。虽然基板管理控制器对实时时钟缓存器里储存的值采取了一些筛选措施,但是这种筛选机制不能保证所有错误的值都能得到筛选。于是在基板管理控制器启动阶段,基板管理控制器就有可能把这个错误的值读取为自己的时间。


【发明内容】

[0005]因此,本发明的主要目的即在于提供一种用于一计算机系统中解决系统异常的方法。
[0006]本发明揭露一种计算器系统的启动方法,该计算器系统包含一基板管理控制器,该启动方法包含有启动该基板管理控制器,其中该基板管理控制器包括一实时时钟缓存器;该基板管理控制器加载一实时时钟(real time clock)驱动,其中该实时时钟驱动用来启动一实时时钟功能;于该实时时钟驱动加载后,检查该基板管理控制器的该实时时钟缓存器的一实时时钟致能字段;若该实时时钟致能字段的状态为禁能,则致能该实时时钟缓存器的一实时时钟更新字段并将该实时时钟缓存器的一时间戳清零;该基板管理控制器从该实时时钟缓存器中获取该时间戳;以及若该时间戳晚于一预设时间,则该基板管理控制器启动完成。
[0007]于一实施例中,若该实时时钟致能字段的状态为致能,则该基板管理控制器直接从该实时时钟缓存器中获取该时间戳。
[0008]于一实施例中,若该时间戳早于一预设时间,则将该时间戳设置为该预设时间,该基板管理控制器启动完成。
[0009]于一实施例中,更包括该基板管理控制器启动完成后,该计算器系统开始系统开机自我检测(POST),—基本输入输出系统(B1S)传送一系统时间给该基板管理控制器,该基板管理控制器将该系统时间存入该实时时钟缓存器中去更新该时间戳。
[0010]于一实施例中,该基板管理控制器的启动为该计算器系统的一交流电供电后的启动,该实时时钟缓存器中的该时间戳的初始值为一随机时间,该实时时钟致能字段预设为禁能,启动该基板管理控制器,该基板管理控制器加载该实时时钟驱动,于该实时时钟驱动加载后,检查该基板管理控制器的该实时时钟缓存器的一实时时钟致能字段,由于该实时时钟致能字段预设为禁能,致能该实时时钟缓存器的该实时时钟更新字段并将该实时时钟缓存器的为随机时间的该时间戳清零,该基板管理控制器从该实时时钟缓存器中获取该时间戳,该时间戳早于该预设时间,则将该时间戳设置为该预设时间,该基板管理控制器启动完成。
[0011]于一实施例中,由于该时间戳设置为该预设时间,该基板管理控制器采用该默认时间记录事件日志(event log)。
[0012]于一实施例中,该基板管理控制器的启动为该计算器系统保持给该基板管理控制器供电的情况下的重新启动,该实时时钟致能字段为致能状态,该基板管理控制器直接从该实时时钟缓存器中获取该时间戳,该时间戳晚于该预设时间,为正确的时间,该基板管理控制器采用正确的该时间戳记录事件日志。
[0013]于一实施例中,该基板管理控制器的启动为该基板管理控制器的一固件(firmware)更新完毕后该基板管理控制器的重启,该实时时钟致能字段为致能状态,该基板管理控制器直接从该实时时钟缓存器中获取该时间戳,该时间戳晚于该预设时间,为正确的时间,该基板管理控制器采用正确的该时间戳记录事件日志。
[0014]于一实施例中,该预设时间为1970年I月I日O时。
[0015]于一实施例中,该实时时钟致能字段的状态为禁能时该域值为0,该实时时钟致能字段的状态为致能时该域值为I,该实时时钟更新字段的状态为禁能时该域值为0,该实时时钟更新字段的状态为致能时该域值为I。

【专利附图】

【附图说明】
[0016]图1为本发明实施例一流程的示意图。
[0017]组件标号说明:
[0018]10 流程
[0019]100、102、104、106、108、110、112、步骤
[0020]I14、I16、I18

【具体实施方式】
[0021]请参考图1,图1为本发明实施例一启动流程10的示意图。启动流程10用于一计算器系统中,且该计算器系统包含一基板管理控制器。启动流程10包含下列步骤:
[0022]步骤100:开始。
[0023]步骤102:启动该基板管理控制器,其中该基板管理控制器包括一实时时钟缓存器。
[0024]步骤104:该基板管理控制器加载一实时时钟(real time clock)驱动,其中该实时时钟驱动用来启动一实时时钟功能。
[0025]步骤106:于该实时时钟驱动加载后,检查该实时时钟缓存器的一实时时钟致能字段EN的数值是否为“I”?若是,执行步骤108 ;若否,执行步骤116。
[0026]步骤108:该基板管理控制器从该实时时钟缓存器中获取一时间戳。
[0027]步骤110:将该实时时钟致能字段EN的数值设定为“I”。
[0028]步骤112:判断所取得的该时间戳是否早于1970年I月I日?若是,执行步骤114 ;若否,执行步骤118。
[0029]步骤114:将1970年I月I日O时设定为该基板管理控制器的时间。
[0030]步骤116:致能该实时时钟缓存器的一实时时钟更新字段并清零该实时时钟缓存器的该时间戳。
[0031]步骤118:结束。
[0032]根据流程10,在实时时钟驱动加载之后,由读取实时时钟致能字段EN的数值为“O”判断基板管理控制器的启动是因为交流电源断电后重新供电,或是由读取实时时钟致能字段EN的数值为“I”判断基板管理控制器的启动是因为重启或基板管理控制器在线更新。当基板管理控制器在交流电源断电后重新供电后启动,且实时时钟驱动下载完毕时,实时时钟功能是禁能的。也就是说,实时时钟缓存器中的时间戳是错误的。透过步骤116致能该实时时钟缓存器的一实时时钟更新字段并将该实时时钟缓存器的一时间戳清零,该基板管理控制器从该实时时钟缓存器中获取清零后的该时间戳,可避免基板管理控制器读取到错误的时间戳。另一方面,当基板管理控制器的启动是因为重启或基板管理控制器在线更新,且实时时钟驱动下载完毕时,实时时钟功能是致能的。因此,实时时钟缓存器中的时间戳是正确,而基板管理控制器可直接取得复数个时间戳。由于基板管理控制器是从1970年I月I日O时开始计数到现在经历多少秒数,因此早于1970年I月I日O时的时间戳皆是错误的时间。在此情况下,基板管理控制器则将本身时间设为1970年I月I日O时,代表基板管理控制器不知道真实时间,并等待系统开机时接收基本输入输出系统所传送的时间。
[0033]简言之,本发明实施例在实时时钟驱动加载之后,取得实时时钟缓存器中的时间戳之前,先作一个更合理的判断,来确定实时时钟缓存器中储存的时间戳是否正确。如果时间戳正确则保留,如果时间戳错误则清零。如此一来,可避免由于交流电源断电,基板管理控制器读取实时时钟缓存器中不正确的日期时间。
[0034]由上述可知,本发明的启动方法包含有启动一基板管理控制器,而该基板管理控制器包括一实时时钟缓存器;该基板管理控制器加载一实时时钟(real time clock)驱动,其中该实时时钟驱动用来启动一实时时钟功能;于该实时时钟驱动加载后,检查该基板管理控制器的该实时时钟缓存器的一实时时钟致能字段;若该实时时钟致能字段的状态为禁能,则致能该实时时钟缓存器的一实时时钟更新字段并将该实时时钟缓存器的一时间戳清零;该基板管理控制器从该实时时钟缓存器中获取该时间戳;以及若该时间戳晚于一预设时间,则该基板管理控制器启动完成。更进一步地,若该实时时钟致能字段的状态为致能,则该基板管理控制器直接从该实时时钟缓存器中获取该时间戳;若该时间戳早于一预设时间,则将该时间戳设置为该预设时间,该基板管理控制器启动完成。而该基板管理控制器启动完成后,该计算器系统开始系统开机自我检测(POST),—基本输入输出系统(B1S)传送一系统时间给该基板管理控制器,该基板管理控制器将该系统时间存入该实时时钟缓存器中去更新该时间戳。该基板管理控制器的启动为该计算器系统的一交流电供电后的启动,该实时时钟缓存器中的该时间戳的初始值为一随机时间,该实时时钟致能字段预设为禁能,启动该基板管理控制器,该基板管理控制器加载该实时时钟驱动,于该实时时钟驱动加载后,检查该基板管理控制器的该实时时钟缓存器的一实时时钟致能字段,由于该实时时钟致能字段预设为禁能,致能该实时时钟缓存器的该实时时钟更新字段并将该实时时钟缓存器的为随机时间的该时间戳清零,该基板管理控制器从该实时时钟缓存器中获取该时间戳,该时间戳早于该预设时间,则将该时间戳设置为该预设时间,该基板管理控制器启动完成。由于该时间戳设置为该预设时间,该基板管理控制器采用该默认时间记录事件日志(event log)。该基板管理控制器的启动为该计算器系统保持给该基板管理控制器供电的情况下的重新启动,该实时时钟致能字段为致能状态,该基板管理控制器直接从该实时时钟缓存器中获取该时间戳,该时间戳晚于该预设时间,为正确的时间,该基板管理控制器采用正确的该时间戳记录事件日志。该基板管理控制器的启动为该基板管理控制器的一固件(firmware)更新完毕后该基板管理控制器的重启,该实时时钟致能字段为致能状态,该基板管理控制器直接从该实时时钟缓存器中获取该时间戳,该时间戳晚于该预设时间,为正确的时间,该基板管理控制器采用正确的该时间戳记录事件日志。该预设时间为1970年I月I日O时。该实时时钟致能字段的状态为禁能时该域值为0,该实时时钟致能字段的状态为致能时该域值为I,该实时时钟更新字段的状态为禁能时该域值为0,该实时时钟更新字段的状态为致能时该域值为I。
[0035]综上所述,本发明实施例在实时时钟驱动加载之后,透过读取致能字段的数值来判断基板管理控制器的启动是因为交流电源断电之后重新供电,还是因为重新启动基板管理控制器或是进行在线更新。然后,视不同的情况来决定是否对实时时钟缓存器储存的日期时间进行处理。
[0036]以上所述仅为本发明的较佳实施例,凡依本发明权利要求范围所做的均等变化与修饰,皆应属本发明的涵盖范围。
【权利要求】
1.一种计算器系统的启动方法,该计算器系统包含一基板管理控制器,该启动方法包含有: 启动该基板管理控制器,其中该基板管理控制器包括一实时时钟缓存器; 该基板管理控制器加载一实时时钟(real time clock)驱动,其中该实时时钟驱动用来启动一实时时钟功能; 于该实时时钟驱动加载后,检查该基板管理控制器的该实时时钟缓存器的一实时时钟致能字段; 若该实时时钟致能字段的状态为禁能,则致能该实时时钟缓存器的一实时时钟更新字段并将该实时时钟缓存器的一时间戳清零; 该基板管理控制器从该实时时钟缓存器中获取该时间戳;以及 若该时间戳晚于一预设时间,则该基板管理控制器启动完成。
2.如权利要求1所述的计算器系统的启动方法,其特征为,若该实时时钟致能字段的状态为致能,则该基板管理控制器直接从该实时时钟缓存器中获取该时间戳。
3.如权利要求1所述的计算器系统的启动方法,其特征为,若该时间戳早于一预设时间,则将该时间戳设置为该预设时间,该基板管理控制器启动完成。
4.如权利要求1所述的计算器系统的启动方法,其特征为,该方法更包括该基板管理控制器启动完成后,该计算器系统开始系统开机自我检测(POST), 一基本输入输出系统(B1S)传送一系统时间给该基板管理控制器,该基板管理控制器将该系统时间存入该实时时钟缓存器中去更新该时间戳。
5.如权利要求3所述的计算器系统的启动方法,其特征为,该基板管理控制器的启动为该计算器系统的一交流电供电后的启动,该实时时钟缓存器中的该时间戳的初始值为一随机时间,该实时时钟致能字段预设为禁能,启动该基板管理控制器,该基板管理控制器加载该实时时钟驱动,于该实时时钟驱动加载后,检查该基板管理控制器的该实时时钟缓存器的一实时时钟致能字段,由于该实时时钟致能字段预设为禁能,致能该实时时钟缓存器的该实时时钟更新字段并将该实时时钟缓存器的为随机时间的该时间戳清零,该基板管理控制器从该实时时钟缓存器中获取该时间戳,该时间戳早于该预设时间,则将该时间戳设置为该预设时间,该基板管理控制器启动完成。
6.如权利要求5所述的计算器系统的启动方法,其特征为,由于该时间戳设置为该预设时间,该基板管理控制器采用该默认时间记录事件日志(event log)。
7.如权利要求2所述的计算器系统的启动方法,其特征为,该基板管理控制器的启动为该计算器系统保持给该基板管理控制器供电的情况下的重新启动,该实时时钟致能字段为致能状态,该基板管理控制器直接从该实时时钟缓存器中获取该时间戳,该时间戳晚于该预设时间,为正确的时间,该基板管理控制器采用正确的该时间戳记录事件日志。
8.如权利要求2所述的计算器系统的启动方法,其特征为,该基板管理控制器的启动为该基板管理控制器的一固件(firmware)更新完毕后该基板管理控制器的重启,该实时时钟致能字段为致能状态,该基板管理控制器直接从该实时时钟缓存器中获取该时间戳,该时间戳晚于该预设时间,为正确的时间,该基板管理控制器采用正确的该时间戳记录事件日志。
9.如权利要求3所述的计算器系统的启动方法,其特征为,该预设时间为1970年I月I日O时。
10.如权利要求1所述的计算器系统的启动方法,其特征为,该实时时钟致能字段的状态为禁能时该域值为0,该实时时钟致能字段的状态为致能时该域值为1,该实时时钟更新字段的状态为禁能时该域值为0,该实时时钟更新字段的状态为致能时该域值为I。
【文档编号】G06F11/22GK104317685SQ201410539490
【公开日】2015年1月28日 申请日期:2014年10月14日 优先权日:2014年10月14日
【发明者】章熙朗, 胡鹏 申请人:英业达科技有限公司, 英业达股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1