[发明专利]一种程序检测方法及装置有效
申请号: | 201610075249.8 | 申请日: | 2016-02-03 |
公开(公告)号: | CN107038084B | 公开(公告)日: | 2021-04-13 |
发明(设计)人: | 张洪光;王卫民;周至捷;吴帆;范文浩;刘元安;袁东明 | 申请(专利权)人: | 北京邮电大学 |
主分类号: | G06F11/07 | 分类号: | G06F11/07 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 马敬;项京 |
地址: | 100876 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | 本发明实施例公开了一种程序检测方法及装置,所述方法包括:预先对网络节点中运行的程序设置第一动态标签和第二动态标签,且所述程序预先被划分为多个基本块,每一基本块被设置有第一静态标签和第二静态标签,同时对下发的无线控制指令设置指令标签,进而,在响应无线控制指令的过程中,执行任一基本块时,基于两种静态标签和第一动态标签来判断是否出现属于节点内部错误类型的控制流错误,进一步的,在执行特殊基本块时,基于第二动态标签和指令标签还可以判断是否出现属于通信错误类型的控制流错误。应用本发明实例可有效检测网络节点中的程序在响应无线控制指令过程中所发生的控制流错误。 | ||
搜索关键词: | 一种 程序 检测 方法 装置 | ||
【主权项】:
一种程序检测方法,其特征在于,应用于无线通信网络中的网络节点;所述方法包括:网络节点中运行的程序接收其他网络节点下发的无线控制指令,其中,所述程序预先被设置有第一动态标签,所述程序由n个基本块构成,每一基本块被设置有第一静态标签和第二静态标签,所述第一静态标签为用于标识当前基本块的信息且属于n+1位的二进制数据的第一数据值,所述第二静态标签为用于标识当前基本块的后继基本块的信息且属于n+1位的二进制数据的第二数据值,所述第一动态标签为属于n+1位的二进制数据的第三数据值且初始化时全置为1,当前基本块的后继基本块为:程序执行过程中当前基本块相邻的下一基本块;在执行第一基本块的入口指令之前,将所述第一基本块的第一静态标签和当前的第一动态标签进行逻辑与运算,得到第一类运算结果,所述第一基本块为所述程序中n个基本块中的与响应所接收到的指令相关的任一基本块;判断所述第一类运算结果是否为0,如果是,确定所述程序出现属于节点内部错误类型的控制流错误,否则,根据所述第一类运算结果更新当前的第一动态标签;在执行所述第一基本块的出口指令之前的预定位置的指令之前,将当前的第二动态标签和当前的第一动态标签进行逻辑或运算,得到第二类运算结果,根据所述第二类运算结果更新当前的第二动态标签,其中,所述第二动态标签为预先为所述程序设置的,且所述第二动态标签为属于n+1位的二进制数据的第四数据值且初始化时全置为0;在执行所述第一基本块的出口指令之前,判断所述第一基本块是否为特殊基本块,如果判断出所述第一基本块为特殊基本块,则判断当前的第二动态标签是否等于所述第一基本块的指令标签,若否,确定所述程序出现属于通信错误类型的控制流错误,若是,在执行完出口指令后初始化当前的第二动态标签,其中,所述特殊基本块为用于执行动作的基本块,所述指令标签用于预存其他网络节点所下发的所述无线控制指令在程序中执行到最终输出时所经历路径,伴随所述无线控制指令的到来而插入到基本块中,且属于n+1位的二进制数据的第五数据值;当执行完毕所述第一基本块的出口指令时,判断所述第一基本块是否为与所述无线控制指令相关的最后一个基本块,如果是,初始化当前的第一动态标签,如果否,根据所述第一基本块的第二静态标签更新当前的第一动态标签,并将所述无线控制指令所关联的基本块中的下一基本块作为第一基本块,继续执行所述在执行第一基本块的入口指令之前,将所述第一基本块的第一静态标签和当前的第一动态标签进行逻辑与运算,得到第一类运算结果的步骤。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京邮电大学,未经北京邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/patent/201610075249.8/,转载请声明来源钻瓜专利网。
- 上一篇:一种新型膨润土精准配料系统
- 下一篇:一种化工用无尘自投料机