一种外设挂载失败自动恢复系统及方法技术方案

技术编号:33439022 阅读:10 留言:0更新日期:2022-05-19 00:26
本发明专利技术公开了一种外设挂载失败自动恢复系统及方法,属于计算机固件技术领域。该系统能够在服务器上电时,枚举外设,形成列表,并进行逐个自检;BIOS检测到外设正常挂载时,则自检下一个设备;BIOS检测到外设未能正常挂载时,尝试通过CPLD对外设板卡进行重新上电的方式排查故障,进行自动恢复,并将外设故障和自恢复情况记录在日志中;所有外设自检完成后,外设驱动全部加载成功,外设已成功使能。本发明专利技术能够节省现有的因外设挂载失败而进行计算机重启,特别是服务器需多次自动重启所耗费的时间。时间。时间。

【技术实现步骤摘要】
一种外设挂载失败自动恢复系统及方法


[0001]本专利技术属于计算机固件
,具体涉及一种外设挂载失败自动恢复系统及方法。

技术介绍

[0002]BIOS在运行时,有些外设虽然在计算机(终端)主板卡槽中接入,但由于软硬件资源初始化问题而无法正常挂载。有时,通过重新启动计算机,这些外设可以恢复正常使用。一般地,现有解决方法是首先将外设插在服务器(PCIe)卡槽中,在BIOS启动后的PCI扫描阶段或者BDS阶段读PCI设备,若此时BIOS没能检测到外设便会将整个计算机(系统)进行重启操作。该方法不能保证重启的第二次、甚至第三次(甚至更多次能正常)检测到外设,这将会严重降低效率,降低设备质量,特别是针对服务器,因为内存条数量多,在开机初始对内存的初始化都需要非常多的时间,如果进行多次重启,会严重降低使用效率。

技术实现思路

[0003]有鉴于此,本专利技术提供了一种外设挂载失败自动恢复系统及方法,能够节省现有的因外设挂载失败而进行计算机(系统)重启,特别是服务器需多次自动重启所耗费的时间。
[0004]一种外设挂载失败自动恢复系统,该系统能够在计算机上电时,枚举外设,形成列表,并进行逐个自检;BIOS检测到外设正常挂载时,则自检下一个设备;BIOS检测到外设未能正常挂载时,尝试通过CPLD对外设板卡进行重新上电的方式排查故障,进行自动恢复,并将外设故障和自恢复情况记录在日志中;所有外设自检完成后,外设驱动全部加载成功,外设已成功使能。
[0005]进一步地,所述外设挂载失败自动恢复系统包括策略配置模块、外设自检模块、上电重启模块和总线协议模块;
[0006]所述策略配置模块用于对外设挂载失败自动恢复的策略进行配置,配置的内容包括该计算机需要进行自动恢复的外设类型、自动恢复的最大循环上电次数、单一板卡的上下电控制方法;
[0007]所述上电重启模块用于通过CPLD,通过标准协议,对外部设备进行上电重启;
[0008]所述总线协议模块用于BIOS对外通信的接口。
[0009]进一步地,所述策略配置模块中的外设类型需要提前录入,作为提供策略配置的依据。
[0010]进一步地,所述策略配置模块中的自动恢复的最大循环上电次数用于限制自动恢复动作的最大执行次数,避免多次无效尝试导致整个系统无法使用。
[0011]进一步地,所述策略配置模块中单一板卡的上下电控制方法是根据外设类型决定在BIOS启动的哪一个阶段执行故障恢复的动作,并给予CPLD相应的执行时间所述外设自检模块用于对外设进行上电自检,外部设备在上电运行时,外设自检模块会获取外设列表,并
逐个通过自检指令进行设备检查;如果设备正常,则返回预定工作状态正常的信号;否则,则返回失败错误码或对自检指令无响应。
[0012]一种外设挂载失败自动恢复系统方法,该方法的实现包括以下步骤:
[0013]步骤一、计算机上电开机,BIOS开始运行;
[0014]步骤二、BIOS初始化阶段,加载外设挂载失败自动恢复系统,使得BIOS及PCLD之间构成互联互通的关系,监控系统设备的状况;
[0015]步骤三、BIOS扫描外部设备总线,枚举外部设备,生成设备列表,并逐个进行自检;
[0016]步骤四、判断当前是否还有未挂载成功的外部设备。若是,则转入下一步骤;若否,则流程结束,转入步骤十一;
[0017]步骤五、根据当前外设的预定接口,向该设备发送自检指令;
[0018]步骤六、判断该设备是否正确返回自检结果;
[0019]步骤七、将设备未正常启动情况记录在启动日志中;
[0020]步骤八、判断该设备可自动恢复次数是否大于等于1,若是,则转入下一步骤;若否,则跳过当前外部设备的自检,对下一个设备进行自检。转入步骤四;
[0021]步骤九、BIOS向CPLD发送该外设板卡重新上电的指令,CPLD按照预定上电时序,使该外设重新上电;
[0022]步骤十、该设备可自动排除故障次数减1,转入步骤四。
[0023]步骤十一、流程结束。
[0024]有益效果:
[0025]1、本专利技术的外设挂载失败自动恢复系统能够在BIOS运行阶段,发现外设发生挂载失败时,通过对外设单独进行重新上电的方式进行自动恢复,能够节省现有因外设挂载失败进行计算机重启而自动修复板卡的故障时间;提升设备恢复外设正常工作的效率,避免了重启恢复的不可靠性导致多次重启导致时间浪费的问题;特别是针对服务器,这种方法存在的优势更是凸显无疑。
[0026]2、本专利技术的上电重启模块能够通过总线协议模块,与计算机电源管理芯片进行交互,实现对板卡的重新上电,进行外设挂载失败的自动恢复,能够解决现有的重启计算机进行自动恢复导致的重启时间过长问题。
[0027]3、本专利技术通过配置计算机需要自动恢复外设类型及重启次数的方法,能够合理地针对关键的外设,进行充分但数量有限的重启修复自动尝试,能够优化地进行必要的外设自动修复,减少了必要的外设检测和恢复流程。
附图说明
[0028]图1为外设挂载失败自动恢复系统硬件连接示意图;
[0029]图2为外设挂载失败自动恢复系统软件结构示意图;
[0030]图3为外设挂载失败自动恢复方法流程图。
具体实施方式
[0031]下面结合附图并举实施例,对本专利技术进行详细描述。
[0032]图1以服务器为例,外设挂载失败自动恢复系统的硬件连接示意图。BIOS、BMC、
CPLD、外设板块连接在PCH或南桥上。CPLD用于主板的上电时序管理;BIOS用于服务器硬件初始化和宿主操作系统引导启动;外设板块包括显卡、RAID卡、光纤卡等设备。
[0033]图2展示了外设挂载失败自动恢复系统软件结构示意图。BIOS中内置了外设挂载失败自动恢复系统,其中,外设挂载失败自动恢复系统包括策略配置模块、外设自检模块、上电重启模块和总线协议模块。
[0034]策略配置模块用于对外设挂载失败自动恢复的策略进行配置,配置的内容包括该计算机需要进行自动恢复的外设类型、自动恢复的最大循环上电次数、故障记录、BIOS启动现场的保存、系统单一板卡的上下电控制方法。
[0035]外设自检模块用于对外设进行上电自检。外部设备往往有用于自动检测的接口,在上电运行时,外设自检模块会获取外设列表,并逐个通过自检指令进行设备检查;如果设备正常,则返回预定工作状态正常的信号;否则,则返回失败错误码或对自检指令无响应;
[0036]上电重启模块用于通过CPLD,通过标准协议,对外部设备进行上电重启;
[0037]总线协议模块用于BIOS对外通信的接口。
[0038]如附图3所示,以RAID卡的挂载失败为例,对BIOS外设挂载失败自动恢复的主要步骤进行说明:
[0039]步骤一、计算机上电开机。
[0040]步骤二、硬件初始化,并加载外设挂载失败自动恢复系统。
[0041]步骤三本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种外设挂载失败自动恢复系统,其特征在于,该系统能够在计算机上电时,枚举外设,形成列表,并进行逐个自检;BIOS检测到外设正常挂载时,则自检下一个设备;BIOS检测到外设未能正常挂载时,尝试通过CPLD对外设板卡进行重新上电的方式排查故障,进行自动恢复,并将外设故障和自恢复情况记录在日志中;所有外设自检完成后,外设驱动全部加载成功,外设已成功使能。2.如权利要求1所述的一种外设挂载失败自动恢复系统,其特征在于,所述外设挂载失败自动恢复系统包括策略配置模块、外设自检模块、上电重启模块和总线协议模块;所述策略配置模块用于对外设挂载失败自动恢复的策略进行配置,配置的内容包括该计算机需要进行自动恢复的外设类型、自动恢复的最大循环上电次数、单一板卡的上下电控制方法;所述上电重启模块用于通过CPLD,通过标准协议,对外部设备进行上电重启;所述总线协议模块用于BIOS对外通信的接口。3.如权利要求2所述的一种外设挂载失败自动恢复系统,其特征在于,所述策略配置模块中的外设类型需要提前录入,作为提供策略配置的依据。4.如权利要求3所述的一种外设挂载失败自动恢复系统,其特征在于,所述策略配置模块中的自动恢复的最大循环上电次数用于限制自动恢复动作的最大执行次数,避免多次无效尝试导致整个系统无法使用。5.如权利要求4所述的一种外设挂载失败自动恢复系统,其特征在于,所述策略配置模块中单一板卡的...

【专利技术属性】
技术研发人员:陈小春张超朱立森孙亮王琦易祝兵
申请(专利权)人:中电科技北京股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1