一种软件运行异常诊断方法与流程

摘要: 本发明涉及计算机软件故障诊断,尤其涉及一种软件运行异常诊断方法。背景技术:1、计算机软件故障诊断技术领域包含软件运行状态监测技术、异常行为识别技术、日志记录与解...
一种软件运行异常诊断方法与流程

本发明涉及计算机软件故障诊断,尤其涉及一种软件运行异常诊断方法。

背景技术:

1、计算机软件故障诊断技术领域包含软件运行状态监测技术、异常行为识别技术、日志记录与解析技术以及故障定位与分析技术,该技术领域的核心内容在于通过对软件执行过程中的指令调用顺序、内存占用变化、线程调度情况以及输入输出交互记录进行持续采集,并基于时间序列数据对运行状态进行关联分析,同时结合异常触发条件的判定规则,对软件在不同运行阶段产生的错误信息进行分类与溯源,从而构建完整的故障诊断技术体系,涵盖数据采集、状态标识、异常比对以及原因追溯等关键环节。

2、其中,软件运行异常诊断方法是指针对软件在执行过程中出现的非预期行为进行识别与分析的处理方式,主要针对的技术事项包括运行日志内容提取、函数调用路径记录、异常触发点标记、运行参数采集以及错误信息关联匹配等,具体通过对程序执行过程中产生的日志文件进行分段读取,依据时间戳对调用顺序进行排列,对关键函数入口与出口位置进行标识,对异常代码返回值进行记录,并将运行参数与历史记录进行逐项比对,从而完成异常情况的识别与诊断过程。

3、现有技术在软件异常诊断过程中主要依据程序运行期间产生的记录信息进行状态判断,当函数调用链较长、线程之间存在交错执行或返回结果处理存在延迟时,记录内容难以体现函数实际执行先后关系与状态变化关联,导致异常节点之间的影响关系难以明确,例如多个函数连续响应异常时,无法区分调用顺序变化与状态异常触发之间的对应关系,影响复杂故障场景下的定位效率。

技术实现思路

1、为了解决现有技术存在的技术问题,本发明实施例提供了一种软件运行异常诊断方法。所述技术方案如下:

2、一种软件运行异常诊断方法,包括以下步骤:

3、获取函数入口时间戳与函数返回指令触发时间戳,按线程及调用顺序生成调用实例标识并配对,形成函数执行区间,读取并映射程序状态字寄存器内容,按时间连接相邻函数执行区间并关联相关信息,得到函数执行轨迹映射集;

4、调用所述函数执行轨迹映射集,按调用顺序确定函数节点,采集返回读取事件并依调用实例标识匹配,以返回后首读形成返回读取间隔,对照相邻间隔标记异常,合并连续异常节点并关联起止函数节点与轨迹位置,得到返回滞后区段分布图;

5、基于所述返回滞后区段分布图,提取区段内函数节点,按原调用顺序比较相邻函数节点执行起点时间,对倒置函数节点反复交换校验,直至函数节点顺序与执行起点时间一致,放回对应轨迹位置并整合区段外函数节点,得到调用路径重排结果;

6、基于所述调用路径重排结果,标记函数节点为状态检测节点,按调用实例标识获取寄存器内容,对照相邻状态检测节点记录变化方向,以连续三状态检测节点校验中间状态检测节点,保留前后均异常状态检测节点并标记位置,得到状态异常触发位置标识集;

7、调用所述状态异常触发位置标识集,在调用路径重排结果中定位对应的重排后函数节点,读取函数执行区间及调用实例标识,由返回滞后区段分布图形成返回滞后区间,对照区间标记重叠、错位状态检测节点,按关系类型归类并关联信息,得到软件异常诊断信息集。

8、本发明实施例提供的技术方案带来的有益效果至少包括:

9、本发明中,通过获取函数执行起止信息并关联程序状态字寄存器内容,实现函数调用过程、状态变化过程与异常轨迹位置的联合表征,结合返回读取间隔变化识别潜在滞后区域,并对存在时间倒置的调用节点进行顺序校正,使异常触发位置能够结合执行状态进行精准关联,相较于依靠单一运行记录进行分析的方式,可提升复杂调用链中异常行为识别与故障原因追踪的准确性,降低因执行轨迹紊乱造成的定位偏差。

1.一种软件运行异常诊断方法,其特征在于,包括以下步骤:

2.根据权利要求1所述的软件运行异常诊断方法,其特征在于:所述函数执行轨迹映射集的获取步骤为:

3.根据权利要求1所述的软件运行异常诊断方法,其特征在于:所述返回滞后区段分布图的获取步骤为:

4.根据权利要求1所述的软件运行异常诊断方法,其特征在于:所述调用路径重排结果的获取步骤为:

5.根据权利要求4所述的软件运行异常诊断方法,其特征在于:所述比较相邻函数节点执行起点时间包括:

6.根据权利要求4所述的软件运行异常诊断方法,其特征在于:的获取步骤为:所述从交换位置校验后续相邻节点时间顺序包括:

7.根据权利要求1所述的软件运行异常诊断方法,其特征在于:所述状态异常触发位置标识集的获取步骤为:

8.根据权利要求1所述的软件运行异常诊断方法,其特征在于:所述软件异常诊断信息集的获取步骤为: