-
公开(公告)号:CN119025409A
公开(公告)日:2024-11-26
申请号:CN202410966968.3
申请日:2024-07-18
Applicant: 北京轩宇信息技术有限公司
IPC: G06F11/36 , G06F18/2415 , G06F18/214
Abstract: 本发明提供了一种中断驱动型程序多变量原子性违反检测方法,包括:以真实航天嵌入式软件为数据库,筛选配有详细文档和带有注释源代码的软件,作为关联变量对识别模型的训练数据集;以共享变量对为对象,通过静态分析对训练数据集中的软件中的共享变量对进行特征提取,构建考虑关联变量对的关联性特征的训练数据集样本;构建学习模型并使用训练数据集样本进行训练,得到一个能够自动识别关联变量对的分类器模型;对待分析源程序进行分析,构建变量对样本作为测试样本;将测试样本输入所述的分类器模型进行关联变量对识别;根据识别的关联变量对得到原子区,分析中断的抢占是否可能破坏原子区,完成多变量原子性违反检测。
-
公开(公告)号:CN114817045B
公开(公告)日:2024-10-25
申请号:CN202210472030.7
申请日:2022-04-29
Applicant: 北京轩宇信息技术有限公司
Abstract: 本发明涉及一种高效的源代码覆盖率确定方法及系统。该方法在插桩时计算出MC/DC真值表,利用位向量压缩真值表并在采集过程中实时计算真值表覆盖情况,具有精度高、膨胀率低和执行速度快的优点。同时,该方法无需额外的辅助插桩点,也无需频繁I/O和输出大量信息,产生的数据量与现有的执行标记方式相当,从而实现了低膨胀率和快速的精确覆盖率分析。
-
公开(公告)号:CN112380133B
公开(公告)日:2024-05-14
申请号:CN202011314585.6
申请日:2020-11-20
Applicant: 北京轩宇信息技术有限公司
Abstract: 本发明实施例公开了一种指令集模拟器利用功能库仿真的方法及装置。所述方法包括:获取目标码中需要利用功能库进行仿真的目标码函数名,及所述目标码函数名对应的功能库函数名;调用目标码解析软件对所述目标码进行解析,确定所述目标码函数名对应的目标函数入口地址;根据所述目标码函数名和所述目标函数入口地址,生成函数地址信息对应表,并将所述函数地址信息对应表发送至指令模拟器;通过所述指令模拟器根据所述功能库函数名,利用功能库函数进行仿真,以得到仿真结果。本发明实施例解决了指令集模拟器调试、测试过程中仿真复杂算法效率较低、计算结果精度较差的问题,解决了对于目标码动态调用外部库函数时无法解析的问题。
-
公开(公告)号:CN112363729B
公开(公告)日:2024-05-14
申请号:CN202011322690.4
申请日:2020-11-23
Applicant: 北京轩宇信息技术有限公司
Abstract: 本发明实施例公开了一种用于静态分析的多编译混合编译的监控方法及装置。所述方法包括:获取待分析程序对应的程序编译日志;根据所述程序编译日志,识别得到编译命令;根据所述编译命令,设计通用的配置文件模型,并将所述程序编译日志映射至所述配置文件模型,得到转换的编译参数;根据编译器类型提取所述待分析程序对应的编译信息。本发明实施例可以实现对多编译器混合编译的项目进行可配置的编译监控。
-
公开(公告)号:CN116450502A
公开(公告)日:2023-07-18
申请号:CN202310294807.X
申请日:2023-03-24
Applicant: 北京轩宇信息技术有限公司
IPC: G06F11/36
Abstract: 本发明公开了一种提升静态分析精度的中间表示方法,包括以下步骤:步骤一,生成抽象语法树;步骤二,构造控制流图;步骤三,执行指针分析;步骤四,插入mu、chi语句;步骤五,构造支配关系;步骤六,构造控制依赖图;步骤七,替换phi函数;步骤八,SSA构造;步骤九,组合控制依赖图;步骤十,完成中间表示的构建;本发明相较于现有的静态分析用中间表示方法,它能够精确的编码程序执行的所有语义;同时它是能够应用于传统的数据流分析、污点分析算法,提升分析效率;另外由于该IR图编码了所有的执行语义,所以能够很简洁地通过遍历图的方式,完成路径敏感的数据流分析和污点分析,或者符号执行。
-
公开(公告)号:CN115658509A
公开(公告)日:2023-01-31
申请号:CN202211323820.5
申请日:2022-10-28
Applicant: 北京轩宇信息技术有限公司
IPC: G06F11/36
Abstract: 本发明公开了精确的中断驱动型嵌入式软件数据竞争动态检测方法,包括以下步骤:步骤一,获取候选同步操作集;步骤二,筛选候选同步操作;步骤三,验证同步操作的准确性;步骤四,检测程序中的数据竞争;相较于现有的数据竞争动态检测方法,本发明通过识别中断程序中的同步操作,以精确检测程序中的数据竞争,解决了现有方法不能识别中断程序中自定义同步操作,导致数据竞争检测存在大量误报的问题,精化数据竞争检测结果,提高了中断驱动型嵌入式软件可信性;本发明通过采用动静结合的方式进行同步操作识别,有效地提高了中断程序数据竞争缺陷检测的准确率,提高了软件开发和测试效率,提升了软件的安全性。
-
公开(公告)号:CN115658507A
公开(公告)日:2023-01-31
申请号:CN202211323818.8
申请日:2022-10-28
Applicant: 北京轩宇信息技术有限公司
IPC: G06F11/36
Abstract: 本发明公开了针对实时嵌入式软件源代码覆盖率分析系统,包括CPU指令集模拟器模块,所述CPU指令集模拟器模块包括包括插桩模块、编译模块、目标码符号分析模块、配置文件生成模块、配置接口模块、指令执行模块、时钟计时和维护模块、函数检查模块、函数调用栈维护模块、覆盖率收集模块、覆盖率分析模块、覆盖率展示模块和报告生成模块,本发明在维持插桩方式不变的情况下,利用指令集模拟器执行实时嵌入式软件目标程序,在执行探针代码时钟暂停计时,使得插桩后代码执行的时钟周期与非插桩的一致,结合高效的源代码插桩和分析方法,该发明的系统具有膨胀率低、保证实时性的优点,同时提升了该系统的执行速度。
-
公开(公告)号:CN115033472A
公开(公告)日:2022-09-09
申请号:CN202210402661.1
申请日:2022-04-18
Applicant: 大连理工大学 , 北京轩宇信息技术有限公司
Abstract: 本发明公开了一种基于线程循环调度顺序化的中断驱动程序模型检测方法,属于软件模型检测领域。首先收集输入的中断驱动程序的中断相关信息,如软件中包含的中断类型、数量、优先级等。初步的源到源的转化处理将中断驱动程序转化为标准多线程程序,然后使用关键步骤线程循环调度顺序化处理实现对随机中断、周期中断和事件触发中断的顺序化。最后,选择检测性质,将顺序化程序输入给限界模型检测工具,得到检测结果。该方法的程序顺序化过程实现对三种类型中断的顺序化处理,并支持中断的多级嵌套、中断去能使能的自动分析。该方法可用于真实的航天嵌入式软件的缺陷检测,如数组越界、除零错等,具有较强的实用性。
-
公开(公告)号:CN114817045A
公开(公告)日:2022-07-29
申请号:CN202210472030.7
申请日:2022-04-29
Applicant: 北京轩宇信息技术有限公司
Abstract: 本发明涉及一种高效的源代码覆盖率确定方法及系统。该方法在插桩时计算出MC/DC真值表,利用位向量压缩真值表并在采集过程中实时计算真值表覆盖情况,具有精度高、膨胀率低和执行速度快的优点。同时,该方法无需额外的辅助插桩点,也无需频繁I/O和输出大量信息,产生的数据量与现有的执行标记方式相当,从而实现了低膨胀率和快速的精确覆盖率分析。
-
公开(公告)号:CN112631925A
公开(公告)日:2021-04-09
申请号:CN202011591752.1
申请日:2020-12-29
Applicant: 北京轩宇信息技术有限公司
IPC: G06F11/36
Abstract: 本申请公开了一种单变量原子违背缺陷的检测方法,该方法包括:将预设中断驱动型软件的源代码转换为中间表示形式LLVM IR,根据中间表示形式构建程序依赖图;根据程序依赖图以及预设IFDS框架构建得到爆炸超图,根据爆炸超图对主程序数据流分析确定每个全局变量串行可达的两次访问序,并对两次访问序的可行性进行分析得到第一分析结果;根据第一分析结果确定出至少一个共享全局变量,以及确定出每个共享全局变量对应的三次访问序,对三次访问序的可行性进行分析得到第二分析结果,根据第二分析结果确定原子违背缺陷并生成缺陷报告。本申请解决了现有技术中单变量原子性违背缺陷检测的准确性和效率较低的技术问题。
-
-
-
-
-
-
-
-
-