System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及芯片领域,具体来说,涉及芯片领域下的处理器技术,更具体地说,涉及一种异常处理方法、装置、处理器及电子设备。
技术介绍
1、处理器的异常处理机制是其架构的一个重要组成部分,它允许处理器在遇到特定的异常情况时采取适当的行动。这种机制可以确保系统的稳定运行,也能提高处理器的灵活性和可靠性。
2、目前,大多处理器均基于内核空间中的异常向量表实现异常处理。例如,在程序流中触发异常之后跳转到异常向量表,执行异常向量表中的异常处理函数实现异常处理,最后返回故障点继续执行程序流。
3、然而,异常向量表通常存储于处理器的内核中,其只能在内核空间中进行异常处理。并且为处理一些特定异常,需要部署各相关平台的通用代码,实现起来十分困难。最终使得处理器中当前异常处理机制的优越性很差。
技术实现思路
1、为解决上述技术问题,本申请提供了一种异常处理方法、装置、处理器及电子设备,以实现提升处理器中当前异常处理机制的优越性的目的。
2、为实现上述技术目的,本申请实施方式提供了如下技术方案:
3、第一方面,本申请实施方式提供了一种异常处理方法,应用于处理器,所述异常处理方法包括:
4、在执行程序流的过程中触发目标异常时,基于目标固件对所述目标异常进行异常处理;
5、基于所述处理器中内核空间的异常向量表再次对所述目标异常进行异常处理;
6、在所述内核空间完成异常处理之后,返回至目标故障点继续执行所述程序流,其中,所述目标故障
7、第二方面,本申请实施方式提供了一种异常处理装置,应用于处理器,所述异常处理装置包括:
8、第一异常处理模块,用于在执行程序流的过程中触发目标异常时,基于目标固件对所述目标异常进行异常处理;
9、第二异常处理模块,用于基于所述处理器中内核空间的异常向量表再次对所述目标异常进行异常处理;
10、异常返回模块,用于在所述内核空间完成异常处理之后,返回至目标故障点继续执行所述程序流,其中,所述目标故障点为所述程序流中触发所述目标异常时的中断点。
11、第三方面,本申请实施方式提供了一种处理器,所述处理器被配置为执行如第一方面所述的异常处理方法。
12、第四方面,本申请实施方式提供了一种电子设备,包括:如第三方面所述的处理器。
13、第五方面,本申请实施方式提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时,实现如第一方面所述的异常处理方法。
14、第六方面,本申请实施方式提供了一种计算机程序产品或计算机程序,所述计算机程序产品包括计算机程序,所述计算机程序存储在计算机可读存储介质中;所述计算机设备的处理器从所述计算机可读存储介质读取所述计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的异常处理方法的步骤。
15、本申请提供的异常处理方法,在执行程序流的过程中触发目标异常时,首先以固件的形式进行初次的异常处理,相比于在内核空间进行操作,在固件层面进行异常处理更加安全,并且固件的可操作性更高,可以灵活的调整异常处理逻辑。然后,基于处理器中内核空间的异常向量表再次对目标异常进行异常处理。通过复用内核空间的异常向量表,实现对异常的二次处理。在保障安全性以及灵活性的同时,可以提升整个异常处理流程的最终效果。最后,在内核空间完成异常处理之后,返回至触发目标异常时的中断点继续执行程序流,完成异常处理流程。本申请实施方式集成了两种处理异常的方式,针对实际发生的一次异常或硬件的一次中断,分别基于固件和内核空间的异常向量表,实现了具体的处理过程,明显提升了处理器中异常处理的优越性。
本文档来自技高网...【技术保护点】
1.一种异常处理方法,其特征在于,应用于处理器,所述异常处理方法包括:
2.根据权利要求1所述的方法,其特征在于,在执行程序流的过程中触发目标异常时,基于目标固件对所述目标异常进行异常处理,包括:
3.根据权利要求2所述的方法,其特征在于,基于所述处理器中内核空间的异常向量表再次对所述目标异常进行异常处理,包括:
4.根据权利要求3所述的方法,其特征在于,基于所述目标寄存器中的所述入口地址,在所述内核空间执行所述目标异常处理函数,对所述目标异常进行异常处理之前,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,将所述目标异常的异常状态信息存储至所述内核空间的相应寄存器,包括:
6.根据权利要求3所述的方法,其特征在于,确定目标异常处理函数的入口地址,包括:
7.根据权利要求3所述的方法,其特征在于,基于所述目标寄存器中的所述入口地址,在所述内核空间执行所述目标异常处理函数,对所述目标异常进行异常处理,包括:
8.根据权利要求7所述的方法,其特征在于,将所述目标异常的异常级别切换为目标异常
9.根据权利要求7所述的方法,其特征在于,根据所述入口地址执行所述目标异常处理函数之前,所述方法还包括:
10.根据权利要求1所述的方法,其特征在于,所述目标异常为所述处理器的用户空间中触发的异常或者所述内核空间中触发的异常。
11.一种异常处理装置,其特征在于,应用于处理器,所述异常处理装置包括:
12.根据权利要求11所述的装置,其特征在于,所述第一异常处理模块,包括:
13.根据权利要求12所述的装置,其特征在于,所述第二异常处理模块,包括:
14.根据权利要求13所述的装置,其特征在于,所述装置还包括:
15.根据权利要求14所述的装置,其特征在于,所述异常信息存储模块,具体用于:
16.根据权利要求13所述的装置,其特征在于,所述入口地址确定单元,具体用于:
17.一种处理器,其特征在于,所述处理器被配置为执行如权利要求1至10中任意一项所述的异常处理方法。
18.一种电子设备,其特征在于,包括:如权利要求17所述的处理器。
19.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时,实现如权利要求1至10中任意一项所述的异常处理方法。
...【技术特征摘要】
1.一种异常处理方法,其特征在于,应用于处理器,所述异常处理方法包括:
2.根据权利要求1所述的方法,其特征在于,在执行程序流的过程中触发目标异常时,基于目标固件对所述目标异常进行异常处理,包括:
3.根据权利要求2所述的方法,其特征在于,基于所述处理器中内核空间的异常向量表再次对所述目标异常进行异常处理,包括:
4.根据权利要求3所述的方法,其特征在于,基于所述目标寄存器中的所述入口地址,在所述内核空间执行所述目标异常处理函数,对所述目标异常进行异常处理之前,所述方法还包括:
5.根据权利要求4所述的方法,其特征在于,将所述目标异常的异常状态信息存储至所述内核空间的相应寄存器,包括:
6.根据权利要求3所述的方法,其特征在于,确定目标异常处理函数的入口地址,包括:
7.根据权利要求3所述的方法,其特征在于,基于所述目标寄存器中的所述入口地址,在所述内核空间执行所述目标异常处理函数,对所述目标异常进行异常处理,包括:
8.根据权利要求7所述的方法,其特征在于,将所述目标异常的异常级别切换为目标异常级别之前,所述方法还包括:
9.根据权利要求7所述的方法,其特征在于,根据所述...
【专利技术属性】
技术研发人员:王银峰,刘勇鹏,舒奕棋,田鹏,
申请(专利权)人:飞腾信息技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。