[发明专利]硬件插拔容错处理的方法和装置有效
| 申请号: | 201210504185.0 | 申请日: | 2012-11-30 |
| 公开(公告)号: | CN103049344A | 公开(公告)日: | 2013-04-17 |
| 发明(设计)人: | 蒋凡璐;余博伟 | 申请(专利权)人: | 华为技术有限公司 |
| 主分类号: | G06F11/07 | 分类号: | G06F11/07 |
| 代理公司: | 北京龙双利达知识产权代理有限公司 11329 | 代理人: | 毛威;张亮 |
| 地址: | 518129 广东*** | 国省代码: | 广东;44 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 硬件 容错 处理 方法 装置 | ||
技术领域
本发明涉及通信领域,并且更具体地,涉及一种硬件插拔容错处理的方法和装置。
背景技术
随着热插拔技术的发展,可以实现在硬件扩容/替换时,不中断业务,或者在更换故障单板时,不中断业务。
为了规范用户热插拔硬件,每款设备都会制定热插拔规范。然而,仍然可能出现野蛮插拔硬件的现象,即,不按规范操作插拔硬件,比如,在未提示可以拔出之前,已拔出硬件。还有可能存在的是,硬件曾掉过电,或者客户是按照正确拔出流程执行硬件的插拔,但是中央处理单元(CenterProcessing Unit,简称CPU)未及时感知到,因此还在继续访问硬件资源等。以上情况均会导致CPU产生异常,需要重启才能恢复,或者会中止被执行的任务。
发明内容
本发明实施例提供了一种硬件插拔容错处理的方法,能够避免系统重启或者业务中止。
第一方面,提供了一种硬件插拔容错处理的方法,包括:在出现异常中断后,确定该异常中断是否是因访问硬件资源引起的;在确定该异常中断是因访问硬件资源引起的时,确定引起该异常中断的硬件的状态,其中,该硬件的状态包括正常在位状态和非正常在位状态;在确定引起该异常中断的硬件的状态为非正常在位状态时,执行异常中断恢复操作。
结合第一方面,在第一方面的第一种可能的实现方式中,该执行异常中断恢复操作包括:保存该异常中断产生时的中断上下文;跳过访问硬件资源错误的指令,并恢复该异常中断产生时的中断上下文。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,该确定引起该异常中断的硬件的状态,包括:检测该硬件的在位标记;在该硬件的在位标记指示不在位时,确定该硬件的状态为非正常在位状态。
结合第一方面,第一方面的第一种可能的实现方式或第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,该确定引起该异常中断的硬件的状态,包括:检测该硬件中的固件程序是否存在;在该固件程序不存在时,确定该硬件的状态为非正常在位状态。
结合第一方面的第三种可能的实现方式,在第一方面的第四种可能的实现方式中,该确定该固件程序是否存在,包括:在该固件程序的在位标记指示不在位或该固件程序的数据不能被正常读取时,确定该固件程序不存在。
第二方面,提供了一种硬件插拔容错处理的方法,包括:按照预设频率对硬件进行检测,并根据检测结果确定该硬件的状态,其中,该硬件的状态包括正常在位状态和非正常在位状态;在确定该硬件的状态为非正常在位状态时,执行硬件拔出流程。
结合第二方面,在第二方面的第一种可能的实现方式中,该对硬件进行检测,并根据检测结果确定该硬件的状态,包括:检测该硬件的在位标记;
在该硬件的在位标记指示不在位时,确定该硬件为非正常在位状态。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,该对硬件进行检测,并根据检测结果确定该硬件的状态,包括:检测该硬件中的固件程序否是存在;在该固件程序不存在时,确定该硬件的状态为非正常在位状态。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,在该第一固件中的固件程序不存在时,该方法还包括:在执行该硬件拔出流程后,启动定时器;在该定时器超时后,若该硬件的在位标记仍指示在位时,则执行硬件插入流程。
结合第二方面的第三种可能的实现方式,在第二方面的第四种可能的实现方式中,该方法还包括:在执行完该硬件插入流程时,检测该硬件中的固件是否存在;在该固件程序不存在时,执行硬件拔出流程。
结合第二方面的第二种可能的实现方式,第二方面的第三种可能的实现方式,第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,该确定该固件程序是否存在,包括:在该固件程序的在位标记指示不在位,或该固件程序的数据不能被正常读取时,确定该固件程序不存在。
第三方面,提供了一种硬件插拔容错处理的装置,包括:第一确定单元,用于在出现异常中断后,确定该异常中断是否是因访问硬件资源引起的;第二确定单元,用于在该第一确定单元确定该异常中断是因访问硬件资源引起的时,确定引起该异常中断的硬件的状态,其中,该硬件的状态包括正常在位状态和非正常在位状态;执行单元,用于在该第二确定单元确定引起该异常中断的硬件的状态为非正常在位状态时,执行异常中断恢复操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210504185.0/2.html,转载请声明来源钻瓜专利网。





