一种多阶段多层次代码特征高效匹配方法

    公开(公告)号:CN119311313A

    公开(公告)日:2025-01-14

    申请号:CN202411385802.9

    申请日:2024-09-30

    Abstract: 本发明公开一种多阶段多层次代码特征高效匹配方法:输入文件特征信息和文件代码片段特征信息的待匹配标准代码文件;当待匹配代码文件的文件后缀名及特征值与代码特征信息知识库中的相同,取知识库中的该匹配文件作为文件级匹配结果,否则对待匹配代码文件进行片段级代码特征匹配;依次将待匹配文件中片段特征信息的特征值与知识库中所有代码片段的特征值进行匹配,得到片段级匹配结果;统计知识库里不同文件下匹配成功的代码片段数量,选取数量最多的文件作为文件级匹配结果;统计知识库里各项目下文件级匹配结果的文件数量,选取排序第一的项目作为与待匹配代码文件相似的项目作为项目级匹配结果,评价待匹配文件与项目级匹配结果的相似程度。

    用于符号执行的复杂类型输入变量懒符号化方法及系统

    公开(公告)号:CN114896145B

    公开(公告)日:2024-09-20

    申请号:CN202210453325.X

    申请日:2022-04-27

    Abstract: 一种用于符号执行的复杂类型输入变量懒符号化方法及系统,包括生成输入驱动文件,通过入口函数指定输入变量和驱动被测函数;分配符号内存;当执行到一条语句时,解释执行和符号执行分别对同一地址上的实际值和符号值进行操作;在执行过程中对内存地址访问时,解释执行直接读写实际值映射表内容;符号执行先检查符号值映射表中该地址上是否存在符号值,存在则直接读写;不存在则创建一个新符号值,符号值映射表中新增一条地址与符号值的映射,再进行正常读写;一次符号执行结束后对收集的约束取反以及求解,最终得到表达式与值的映射关系,生成用例数据文件。本发明针对复杂类型的输入变量,采用懒符号化策略,提升用例的生成速度和降低内存开销。

    图神经网络模型训练方法、软件缺陷检测方法及系统

    公开(公告)号:CN112288079B

    公开(公告)日:2024-05-14

    申请号:CN202011286945.6

    申请日:2020-11-17

    Abstract: 本发明公开了一种图神经网络模型训练方法、软件缺陷检测方法及系统。包括:根据软件缺陷数据集,获取训练软件函数及测试软件函数,训练软件函数和测试软件函数预先标注有初始缺陷数据;根据训练软件函数的多维代码属性,构建初始多维代码属性图,根据测试软件函数的多维代码属性,构建目标多维代码属性图;基于初始多维代码属性图对初始图神经网络模型进行训练,得到训练后的图神经网络模型;基于目标多维代码属性图对训练后的图神经网络模型进行测试,获取预测缺陷数据;在初始缺陷数据和预测缺陷数据匹配时,将训练后的图神经网络模型作为目标图神经网络模型。本发明可以提高软件缺陷检测精度,减少了人工干预的过程,易于扩展检测的缺陷类型。

    基于线程循环调度顺序化的中断驱动程序模型检测方法

    公开(公告)号:CN115033472B

    公开(公告)日:2024-03-22

    申请号:CN202210402661.1

    申请日:2022-04-18

    Abstract: 本发明公开了一种基于线程循环调度顺序化的中断驱动程序模型检测方法,属于软件模型检测领域。首先收集输入的中断驱动程序的中断相关信息,如软件中包含的中断类型、数量、优先级等。初步的源到源的转化处理将中断驱动程序转化为标准多线程程序,然后使用关键步骤线程循环调度顺序化处理实现对随机中断、周期中断和事件触发中断的顺序化。最后,选择检测性质,将顺序化程序输入给限界模型检测工具,得到检测结果。该方法的程序顺序化过程实现对三种类型中断的顺序化处理,并支持中断的多级嵌套、中断去能使能的自动分析。该方法可用于真实的航天嵌入式软件的缺陷检测,如数组越界、除零错等,具有较强的实用性。

    一种基于数据流和状态机的模型覆盖率分析统计方法

    公开(公告)号:CN116627806A

    公开(公告)日:2023-08-22

    申请号:CN202310540000.X

    申请日:2023-05-15

    Abstract: 一种基于数据流和状态机的模型覆盖率分析统计方法,包括步骤一,分析数据流和状态机模型;步骤二,条件关键点分析;步骤三,生成模型代码;步骤四,执行及覆盖率分析;所述步骤一中,对于数据流模型进行遍历:根据输出节点获取以其为终止节点的有向边;根据有向边查找其起始节点;重复上述两步,直至找到节点满足以下条件:没有其作为终止节点的有向边;遍历过程中,遍历到的每个节点都作为一个基本块;本发明通过分析模型的基本块和关键点,并基于分析结果对模型生成代码并插桩,在仿真后对基本块覆盖情况和条件覆盖情况进行统计分析,该方法已经在真实程序中进行了验证,可以计算出基本块覆盖率和条件覆盖率。

    一种针对中断驱动型嵌入式软件的共享数据分析方法

    公开(公告)号:CN116450500A

    公开(公告)日:2023-07-18

    申请号:CN202310294715.1

    申请日:2023-03-24

    Abstract: 本发明公开了一种针对中断驱动型嵌入式软件的共享数据分析方法,包括以下步骤:步骤一,前期处理;步骤二,并发流入口分析;步骤三,访问模型建立;步骤四,指针分析;步骤五,数值分析;步骤六,识别共享数据;步骤七,共享数据标记;本发明通过一个通用的共享数据访问模型刻画各种粒度共享数据访问情况,在此基础上采用基于抽象解释的数值分析获得表示共享数据访问所需的数值不变式,以精确检测程序中的共享数据,达到千行级程序低误报无漏报的效果,且可扩展到万行程序,有利于为中断数据访问冲突的检测工作提供精确的数据集,降低了现有共享数据分析方法的误报和漏报,提升共享数据分析的精确性和完备性。

    一种嵌入式软件单元测试用例生成方法及系统

    公开(公告)号:CN109086215B

    公开(公告)日:2021-11-16

    申请号:CN201811216675.4

    申请日:2018-10-18

    Abstract: 本发明提供了一种嵌入式软件单元测试用例生成方法及系统。所述方法包括:对嵌入式软件源程序文件进行静态分析,生成输入驱动文件;在所述输入驱动文件中定义一驱动函数;其中,所述驱动函数用于指定输入待求解的表达式或桩函数;依据解释执行和符号执行相结合的方式对所述表达式或所述桩函数进行求解;将嵌入式软件中IO端口特殊编码为多重符号,求解得到值序列;基于求解结果和所述值序列,生成测试用例。本发明可以简化生成测试用例的操作步骤,降低由于插桩带来的性能开销,自动生成的输入驱动文件能满足绝大部分需求,并且无论是哪种嵌入式平台的软件都可以解释执行,大幅降低了配置目标环境带来的时间成本和人力成本。

    一种软件回归测试过程中基于智能水滴的测试用例优先级确定方法

    公开(公告)号:CN110377496A

    公开(公告)日:2019-10-25

    申请号:CN201910351255.5

    申请日:2019-04-28

    Abstract: 本发明公开了一种软件回归测试过程中基于智能水滴的测试用例优先级确定方法,该方法包括:确定影响测试用例优先级的因素;根据测试用例发现的缺陷的严重性确定测试用例的重要程度;根据测试用例的重要程度建立测试用例节点选择规则;根据测试用例可以发现的缺陷数量、测试用例的执行时间,建立智能水滴速度更新规则;建立用例选择路径泥土量更新规则;所有智能水滴迭代完成后,确定所有智能水滴中的测试用例优先级排序。本发明充分考虑了影响测试用例优先级的因素,解决了考虑用例因素单一和未将这些因素融入到算法设计的问题,并根据智能水滴算法对回归测试用例执行的优先级进行排序,提高了回归测试的有效性和快速性。

Patent Agency Ranking