[发明专利]软件源代码的验证方法及装置有效

专利信息
申请号: 201710038189.7 申请日: 2017-01-18
公开(公告)号: CN106886446B 公开(公告)日: 2020-10-23
发明(设计)人: 马殿富;谭宇;赵永望;陈志伟;刘克瑞 申请(专利权)人: 北京航空航天大学
主分类号: G06F8/41 分类号: G06F8/41
代理公司: 北京同立钧成知识产权代理有限公司 11205 代理人: 杨贝贝;刘芳
地址: 100191 北京市海淀区学*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 软件 源代码 验证 方法 装置
【权利要求书】:

1.一种软件源代码的验证方法,其特征在于,包括:

根据编程语言的语法规则,对软件源代码进行文法单元的划分,得到至少一个所述文法单元;

基于预设的下推自动机,对每个文法单元进行识别;

识别通过后,将所述文法单元编译为目标代码段;

根据预设的专用公理集,获取所述文法单元对应的第一指称语义,获取所述目标代码段对应的第二指称语义;

判断所述第一指称语义与所述第二指称语义是否一致;

若所述第一指称语义与所述第二指称语义不一致,确定所述软件源代码存在错误。

2.根据权利要求1所述的方法,其特征在于,所述文法单元为循环结构文法单元或非循环结构文法单元;

若所述文法单元为循环结构文法单元,相应的,所述判断所述第一指称语义与所述第二指称语义是否一致,包括:

基于循环交互证明算法,所述判断所述第一指称语义与所述第二指称语义是否一致;

若所述文法单元为非循环结构文法单元,相应的,所述判断所述第一指称语义与所述第二指称语义是否一致,包括:

基于自动推理算法,比较所述第一指称语义与所述第二指称语义是否一致。

3.根据权利要求1所述的方法,其特征在于,所述判断所述第一指称语义与所述第二指称语义是否一致之后,还包括:

若所述软件源代码中的每个文法单元的所述第一指称语义与所述第二指称语义均一致,确定所述软件源代码正确;

将所述软件源代码中的每个文法单元所对应的目标代码段进行组合,得到所述软件源代码对应的目标代码。

4.根据权利要求1所述的方法,其特征在于,

所述预设的下推自动机包含第一动作函数,所述第一动作函数包括状态调用接口和状态返回接口;

所述状态调用接口用于跳转到所述下推自动机的第二动作函数;所述第二动作函数为所述状态调用接口对应的动作函数;

所述状态返回接口用于从所述第二动作函数返回到第三动作函数;所述第三动作函数为位于所述第一动作函数之后的下一个动作函数;

相应的,所述基于预设的下推自动机,对每个文法单元进行识别,包括:

将所述预设的下推自动机的第一动作函数的字符与所述文法单元的当前字符匹配;

匹配成功后,根据所述第一动作函数的状态函数的状态调用接口,跳转到所述第二动作函数,将所有第二动作函数的字符与当前文法单元相关联的子文法单元的所有字符进行匹配;

匹配成功后,根据所述第一动作函数的状态返回接口返回所述第三动作函数,将所述第三动作函数的字符与所述文法单元的当前字符的下一个字符进行匹配。

5.根据权利要求1所述的方法,其特征在于,还包括:当确定所述软件源代码存在错误之后,修正所述文法单元对应的软件源代码。

6.一种软件源代码的验证装置,其特征在于,包括:

划分模块,根据编程语言的语法规则,对软件源代码进行文法单元的划分,得到至少一个所述文法单元;

识别模块,基于预设的下推自动机,对每个文法单元进行识别;

编译模块,识别通过后,将所述文法单元编译为目标代码段;

获取模块,根据预设的专用公理集,获取所述文法单元对应的第一指称语义,获取所述目标代码段对应的第二指称语义;

判断模块,判断所述第一指称语义与所述第二指称语义是否一致;

第一确定模块,若所述第一指称语义与所述第二指称语义不一致,确定所述软件源代码存在错误。

7.根据权利要求6所述的装置,其特征在于,所述文法单元为循环结构文法单元或非循环结构文法单元;

所述判断模块,具体用于当所述文法单元为循环结构文法单元时,基于循环交互证明算法,所述判断所述第一指称语义与所述第二指称语义是否一致;或当所述文法单元为非循环结构文法单元时,基于自动推理算法,比较所述第一指称语义与所述第二指称语义是否一致。

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

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京航空航天大学,未经北京航空航天大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

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

×

专利文献下载

说明:

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

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

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

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

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

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

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

钻瓜专利网在线咨询

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

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