[发明专利]一种程序容错方法及程序容错装置在审

专利信息
申请号: 201710882509.7 申请日: 2017-09-26
公开(公告)号: CN107479941A 公开(公告)日: 2017-12-15
发明(设计)人: 徐佳宏;梁达源;朱吕亮 申请(专利权)人: 深圳市茁壮网络股份有限公司
主分类号: G06F9/45 分类号: G06F9/45
代理公司: 深圳市深佳知识产权代理事务所(普通合伙)44285 代理人: 王仲凯
地址: 518004 广东省*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 程序 容错 方法 装置
【说明书】:

技术领域

发明涉及程序容错技术领域,特别涉及一种程序容错方法及程序容错装置。

背景技术

容错是由于种种原因在引擎中的程序发生各种错误时,例如变量、函数没有定义、各种笔误等,程序会在一定范围内包容或允许错误的发生,使系统能够连续正常运行。

在现有的容错技术下,系统捕捉程序中的错误。当程序中循环语句中发生条件判断错误时,系统在现有容错技术的作用下,使循环语句在程序不终止的情况下一直循环执行,导致程序无法跳出,然后进入死循环。

程序进入死循环后,程序无法继续执行下去,导致程序崩溃,使系统无法正常运行下去。

发明内容

有鉴于此,本发明提供一种程序容错方法及程序容错装置。该容错方法在引擎捕捉到程序中循环语句中条件判断语句发生错误时,在不终止引擎运行的情况下,使程序跳出发生错误的循环语句,继续执行下一条语句,使系统能够正常运行。具体技术方案如下:

一种程序容错方法,包括:

对第一程序进行解析,生成第一字节码,其中,所述第一程序中各循环语句均设置有头部标识和尾部标识;

确定所述第一字节码中各循环语句的循环语句类型;

根据所述头部标识、所述尾部标识及确定的所述循环语句类型,确定每条循环语句偏移到下一条语句所需的偏移量,对每条循环语句:建立该循环语句与该循环语句偏移到下一条语句所需的偏移量的对应关系;

获得所述第一字节码发生的第一错误的错误记录,根据所述错误记录确定所述第一错误是否为循环语句的条件判断错误,如果是,则控制所述第一错误所在的循环语句向后偏移与该循环语句对应的偏移量以执行下一条语句。

可选的,所述确定所述第一字节码中各循环语句的循环语句类型,包括:

根据所述头部标识和所述尾部标识确定各循环语句对应的字节码;

对每一循环语句对应的字节码:获得该循环语句对应的字节码中的关键字;

根据所述关键字确定该循环语句的循环语句类型。

可选的,所述关键字包括:for、while和do,所述根据所述关键字确定该循环语句的循环语句类型,包括:

在该循环语句对应的字节码中的关键字为for时,确定该循环语句的循环语句类型为for循环语句;

在该循环语句对应的字节码中的关键字为while时,确定该循环语句的循环语句类型为while循环语句;

在该循环语句对应的字节码中的关键字为do和while时,确定该循环语句的循环语句类型为do while循环语句。

可选的,所述根据所述头部标识、所述尾部标识及确定的所述循环语句类型,确定每条循环语句偏移到下一条语句所需的偏移量,包括:

对循环语句类型为for循环语句或while循环语句的循环语句:将该循环语句的头部标识所标识的语句到与该循环语句相邻的下一条语句之间的字节码大小确定为该循环语句偏移到与该循环语句相邻的下一条语句所需要的偏移量;

对循环语句为do while循环语句的循环语句:将该循环语句的尾部标识所标识的语句到与该循环语句相邻的下一条语句之间的字节码大小确定为该循环语句偏移到与该循环语句相邻的下一条语句所需要的偏移量。

可选的,所述根据所述错误记录确定所述第一错误是否为循环语句的条件判断错误,包括:

根据所述错误记录中的错误位置确定所述第一错误是否发生在循环语句的条件判断语句中;如果是,则确定所述错误记录中的错误类型是否为预设条件错误类型中的一种,如果是,则确定所述第一错误为循环语句的条件判断错误。

可选的,所述控制所述条件判断错误所在的循环语句向后偏移与该循环语句对应的偏移量以执行下一条语句,包括:

为所述条件判断错误添加偏移标识,控制添加有偏移标识的错误所在的循环语句向后偏移与该循环语句对应的偏移量以执行下一条语句。

一种程序容错装置,包括:程序解析模块、循环语句确定模块、偏移确定模块和偏移执行模块;

所述程序解析模块,用于对第一程序进行解析,生成第一字节码,其中,所述第一程序中各循环语句均设置有头部标识和尾部标识;

所述循环语句确定模块,用于确定所述第一字节码中各循环语句的循环语句类型;

所述偏移确定模块,用于根据所述头部标识、所述尾部标识及确定的所述循环语句类型,确定每条循环语句偏移到下一条语句所需的偏移量,对每条循环语句:建立该循环语句与该循环语句偏移到下一条语句所需的偏移量的对应关系;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市茁壮网络股份有限公司,未经深圳市茁壮网络股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201710882509.7/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top