期刊文献+
共找到26篇文章
< 1 2 >
每页显示 20 50 100
一个基于Eclipse的通用Java程序插桩工具 被引量:3
1
作者 郑晓梅 《计算机科学》 CSCD 北大核心 2011年第7期139-143,169,共6页
插桩技术作为一种有效理解程序动态行为的手段,已经被广泛应用于程序分析、测试和验证中。然而,由于缺少通用的插桩工具,各种具体的应用往往需要从头开发特定的插桩程序,存在着大量的重复性工作。此外,由于在原始程序中插入了大量额外代... 插桩技术作为一种有效理解程序动态行为的手段,已经被广泛应用于程序分析、测试和验证中。然而,由于缺少通用的插桩工具,各种具体的应用往往需要从头开发特定的插桩程序,存在着大量的重复性工作。此外,由于在原始程序中插入了大量额外代码,致使调试过程变得更加复杂和困难。针对这些问题,提出了一个基于Eclipse的通用Java代码插桩工具,即通过规则定义匹配程序的执行点,从而定制针对各种分析、测试和验证插桩需求的支持。通过对插桩代码片段的显式/隐式切换实现其可见性管理,从而确保程序的理解和调试过程不受插桩代码影响。通过使用该工具,可以更好地将插桩技术应用于Java程序开发中。 展开更多
关键词 程序插桩 JAVA ECLIPSE
下载PDF
基于正则表达式、程序插桩和代码替换的以太坊智能合约bug检测和修复方法
2
作者 肖锋 张鹏程 罗夏朴 《计算机科学》 CSCD 北大核心 2021年第11期89-101,共13页
作为当前最大的支持智能合约的区块链平台,数以百万计的智能合约被部署在以太坊上。由于即使发现包含bug也无法修改已部署的智能合约,因此对于开发人员而言,在部署合约前修复合约中的bug至关重要。当前研究人员已经提出了许多智能合约... 作为当前最大的支持智能合约的区块链平台,数以百万计的智能合约被部署在以太坊上。由于即使发现包含bug也无法修改已部署的智能合约,因此对于开发人员而言,在部署合约前修复合约中的bug至关重要。当前研究人员已经提出了许多智能合约分析工具,用于检测合约中的bug。这些工具要么使用基于以太坊虚拟机字节码的符号执行来检测bug,要么将源代码转换为中间表示形式后再检测bug。然而,基于符号执行的工具通常无法覆盖合约中的大部分bug;将源代码转换为中间表示形式会对检测速度产生负面影响。此外,现有的工具都只能检测bug,而无法根据检测结果自动修复bug。为了解除以上限制,提出了一种名为SolidityCheck的方法,该方法通过使用正则表达式、程序插桩和语句替换等技术,实现快速检测合约中的bug并自动修复其中某些种类bug的目的。文中进行了一系列实验来评估SolidityCheck,实验结果表明,与现有方法相比,SolidityCheck在多个指标上显示出了优异的性能。 展开更多
关键词 以太坊 智能合约 SOLIDITY 正则表达式 程序插桩
下载PDF
面向程序分析的插桩技术研究 被引量:5
3
作者 王克朝 成坚 +1 位作者 王甜甜 任向民 《计算机应用研究》 CSCD 北大核心 2015年第2期479-484,共6页
为了满足测试覆盖分析和软件调试等程序分析技术对插桩技术的需求,提出了插桩模型,开发了一款实用的插桩工具。基于双缓冲技术,构建词法分析器和语法分析器。在语法分析归约时同步收集插桩信息,然后根据插桩策略执行插桩,生成目标文件... 为了满足测试覆盖分析和软件调试等程序分析技术对插桩技术的需求,提出了插桩模型,开发了一款实用的插桩工具。基于双缓冲技术,构建词法分析器和语法分析器。在语法分析归约时同步收集插桩信息,然后根据插桩策略执行插桩,生成目标文件。得到的程序运行时信息被应用于影响广泛的四种软件自动调试分析方法。对于这四种方法。缺陷语句均被准确识别为最可疑语句。应用结果表明,该方法能够为准确高效的程序分析提供必要的运行时信息。 展开更多
关键词 程序插桩 程序分析 软件自动调试 语法树
下载PDF
基于插桩和布尔逻辑的运行时程序验证框架 被引量:3
4
作者 李业华 顾乃杰 +1 位作者 张颖楠 彭飞 《计算机工程》 CAS CSCD 2013年第1期29-34,40,共7页
针对软件测试和静态程序验证中存在的连续性程序执行验证和推理问题,提出一个基于程序插桩和布尔逻辑的运行时程序验证框架——RPA。定义一种用于描述运行时程序性质和规范的动态逻辑语言RPAL,实现自动化插桩以收集运行时程序状态信息,... 针对软件测试和静态程序验证中存在的连续性程序执行验证和推理问题,提出一个基于程序插桩和布尔逻辑的运行时程序验证框架——RPA。定义一种用于描述运行时程序性质和规范的动态逻辑语言RPAL,实现自动化插桩以收集运行时程序状态信息,设计一个支持高效验证的句子调度算法。实验结果表明,结合合适的谓词扩展,RPA可以有效地验证和分析软件逻辑,发现潜在的软件错误。 展开更多
关键词 RPA框架 RPAL语言 运行时程序验证 程序插桩 布尔逻辑 事实推理
下载PDF
基于路径覆盖插桩的可执行代码测试工具实现 被引量:4
5
作者 王轶 蒋同海 +1 位作者 董军 周喜 《计算机工程》 CAS CSCD 2012年第5期35-37,40,共4页
为解决传统程序插桩技术存在代码膨胀和运行时间较长的问题,提出对可执行代码进行控制流路径覆盖消除冗余的插桩策略。依据该策略设计一种针对Java可执行代码的单元测试工具,完成程序执行路径跟踪和覆盖率分析。对测试工具进行功能验证... 为解决传统程序插桩技术存在代码膨胀和运行时间较长的问题,提出对可执行代码进行控制流路径覆盖消除冗余的插桩策略。依据该策略设计一种针对Java可执行代码的单元测试工具,完成程序执行路径跟踪和覆盖率分析。对测试工具进行功能验证和性能分析,结果表明,该策略能够有效减少插桩点数量,降低插桩对被测程序时间特性的影响。 展开更多
关键词 动态分析 单元测试 程序插桩 可执行代码 覆盖率分析 路径跟踪
下载PDF
基于插桩技术的动态测试研究与实现 被引量:4
6
作者 张荣 王曙燕 《现代电子技术》 2011年第4期50-52,55,共4页
为了动态进行白盒、黑盒测试,设计实现了基于源代码插桩的动态测试工具,该工具包含了源代码的预处理方法、插桩库设计、插桩策略以及统计分析等内容。通过对源代码的语法、词法分析,对其插桩能获取最高的准确度,并且设计在函数执行,结... 为了动态进行白盒、黑盒测试,设计实现了基于源代码插桩的动态测试工具,该工具包含了源代码的预处理方法、插桩库设计、插桩策略以及统计分析等内容。通过对源代码的语法、词法分析,对其插桩能获取最高的准确度,并且设计在函数执行,结束之前统一将桩信息写入桩文件中,减少了大量的I/O操作。最终,通过测试用例的执行获得了覆盖率、执行时间、复杂度等测试数据,正确地得到了测试用例优劣性的指标。 展开更多
关键词 程序插桩 动态测试 覆盖率 软件测试
下载PDF
多计算机的自动插桩与监测系统 被引量:1
7
作者 苏铭 宋宗宇 王华 《计算机工程与应用》 CSCD 北大核心 2002年第4期79-82,共4页
在设计大规模的并行应用程序时,如何使多处理器的利用率达到最优,这对程序设计人员来讲是一个很大的挑战。一般说来,由于应用程序在运行时性能上的缺陷,计算资源得不到充分利用。因此,迫切需要对应用程序进行“性能调试”,即在正确性的... 在设计大规模的并行应用程序时,如何使多处理器的利用率达到最优,这对程序设计人员来讲是一个很大的挑战。一般说来,由于应用程序在运行时性能上的缺陷,计算资源得不到充分利用。因此,迫切需要对应用程序进行“性能调试”,即在正确性的基础上,通过揭示这些缺陷,对程序进行细调而提高程序性能。在这篇文章里,介绍了一个软件工具包—自动插桩和监测系统(theAutomatedInstrumentationandMonitoringSystem),它集程序插桩、运行监测和性能分析为一体,支持在多处理器上对并行应用程序进行性能评估。文章首先论述了一些建立性能调试工具的基本问题;然后,详细描述AIMS系统的体系结构以及在利用AIMS工具包进行性能调试工具的开发中的经验;最后,使用两个例子详细地描述使用AIMS系统进行性能调试的过程。 展开更多
关键词 程序插桩 运行监测 性能分析 性能调试 并行程序设计 计算机
下载PDF
基本路径覆盖测试探针插桩技术研究 被引量:2
8
作者 施冬梅 《计算机工程与设计》 CSCD 北大核心 2010年第13期3025-3028,共4页
为实现C语言开发的嵌入式软件自动路径覆盖测试,提出了基本路径覆盖(Z路径优化)测试探针插桩技术。初始化时确定探针算法、分配内存空间,插桩策略解决了插桩位置及方法,采用消息队列机制完成测试数据采集,使用模式匹配删除探针恢复现场... 为实现C语言开发的嵌入式软件自动路径覆盖测试,提出了基本路径覆盖(Z路径优化)测试探针插桩技术。初始化时确定探针算法、分配内存空间,插桩策略解决了插桩位置及方法,采用消息队列机制完成测试数据采集,使用模式匹配删除探针恢复现场。通过模拟测试XSBase 255嵌入式系统上的C语言计算器模块(callbacks.c),从覆盖率看出取得了一定的效果,为测试和维护工作提供了底层数据支持。 展开更多
关键词 路径覆盖测试 程序插桩技术 消息队列机制 控制流程图 嵌入式软件
下载PDF
嵌入式软件语句覆盖率测试插桩技术 被引量:5
9
作者 孙红利 王忠民 王文浪 《计算机应用》 CSCD 北大核心 2010年第10期2738-2740,2744,共4页
针对基于宿主机的嵌入式软件测试,提出一种单元测试中通用的语句覆盖率测试方法,通过插桩技术,采用向源代码插桩实现语句覆盖率测试。设计了测试代码的实现算法,通过测试代码可以自动完成向被测代码插桩。这些方法被成功地应用到笔者所... 针对基于宿主机的嵌入式软件测试,提出一种单元测试中通用的语句覆盖率测试方法,通过插桩技术,采用向源代码插桩实现语句覆盖率测试。设计了测试代码的实现算法,通过测试代码可以自动完成向被测代码插桩。这些方法被成功地应用到笔者所在项目组开发的嵌入式软件仿真测试平台ARMtest上。利用这些方法,在嵌入式硬件系统未完成开发之前,可通过宿主机环境和仿真环境及时发现嵌入式软件开发初期的一些不足并加以完善。 展开更多
关键词 嵌入式软件 宿主机环境 程序插桩 语句覆盖 单元测试 仿真测试
下载PDF
面向死锁规避的路径敏感插桩
10
作者 齐鹏 禹振 +1 位作者 苏小红 马培军 《智能计算机与应用》 2015年第5期108-112,共5页
程序插桩技术是一种基本的测试手段,在软件测试中被广泛的应用。插装方式是指在程序源码中插入一些语句,通过这些语句可以获得所需要的信息,在死锁规避的静态分析中需要通过程序插桩的方式记录下一些信息。程序插桩按照源程序的结构分... 程序插桩技术是一种基本的测试手段,在软件测试中被广泛的应用。插装方式是指在程序源码中插入一些语句,通过这些语句可以获得所需要的信息,在死锁规避的静态分析中需要通过程序插桩的方式记录下一些信息。程序插桩按照源程序的结构分为顺序结构的插桩,分支结构的插桩和循环结构的插桩。在对源程序进行词法语法分析的基础上建立抽象语法树和控制流图,根据控制流图获取程序可能执行的所有路径信息,接着根据路径信息决定插桩的内容。 展开更多
关键词 词法分析 语法分析 抽象语法树 程序插桩
下载PDF
C程序数组越界的运行时验证技术研究与实现 被引量:7
11
作者 李文明 陈哲 +1 位作者 李绪蓉 黄志球 《计算机工程与应用》 CSCD 北大核心 2015年第11期190-195,211,共7页
缓存区溢出能引起非常严重的安全问题,对网络和分布式系统(如机群,网格,P2P系统等)构成严重威胁。数组越界在缓存区溢出中占据重要位置,如何检测数组越界错误是一个重要且极具意义的课题。针对该课题,给出一种对C语言数组越界进行运行... 缓存区溢出能引起非常严重的安全问题,对网络和分布式系统(如机群,网格,P2P系统等)构成严重威胁。数组越界在缓存区溢出中占据重要位置,如何检测数组越界错误是一个重要且极具意义的课题。针对该课题,给出一种对C语言数组越界进行运行时验证的方法。分析了数组越界的错误类型,根据这些类型分别研究了数组越界的运行时验证的思想;设计了基于程序插桩进行数组越界动态检测的算法,给出了该方法基于开源编译器Clang的具体实现;用实验证明了该方法是切实可行并且有效的。 展开更多
关键词 数组越界 运行时验证 程序插桩
下载PDF
基于Adaboost模型的并发程序数据竞争语句级检测 被引量:2
12
作者 孙家泽 易刚 舒新峰 《计算机工程》 CAS CSCD 北大核心 2021年第12期215-220,共6页
针对并发程序数据竞争检测时准确率低和开销大的问题,基于Adaboost模型设计并发程序数据竞争语句级检测方法。对多线程并发程序进行插桩操作,记录指令的相关内存信息,并对提取出的指令集做语句级转化处理,利用语句对相关属性特征构建并... 针对并发程序数据竞争检测时准确率低和开销大的问题,基于Adaboost模型设计并发程序数据竞争语句级检测方法。对多线程并发程序进行插桩操作,记录指令的相关内存信息,并对提取出的指令集做语句级转化处理,利用语句对相关属性特征构建并发程序Adaboost数据竞争检测模型,实现多线程程序数据竞争检测工具ADR。实验结果表明,相比于Eraser、Djit+和Thread Sanitizer工具,ADR能够在降低时间及内存开销的同时,有效提高分类准确率,验证了所提方法的有效性。 展开更多
关键词 数据竞争 并发程序 程序插桩 Adaboost模型 语句级
下载PDF
面向二进制程序的导向性模糊测试方法 被引量:2
13
作者 张瀚方 周安民 +2 位作者 贾鹏 刘露平 刘亮 《计算机应用》 CSCD 北大核心 2019年第5期1389-1393,共5页
为了解决当前模糊测试技术中变异存在一定的盲目性以及变异生成的样本大多经过相同的高频路径的问题,提出并实现了一种基于轻量级程序分析技术的二进制程序模糊测试方法。首先对目标二进制程序进行静态分析来筛选在模糊测试过程中阻碍... 为了解决当前模糊测试技术中变异存在一定的盲目性以及变异生成的样本大多经过相同的高频路径的问题,提出并实现了一种基于轻量级程序分析技术的二进制程序模糊测试方法。首先对目标二进制程序进行静态分析来筛选在模糊测试过程中阻碍样本文件深入程序内部的比较指令;随后对目标文件进行插桩来获取比较指令中操作数的具体值,并根据该具体值为比较指令建立实时的比较进度信息,通过比较进度衡量样本的重要程度;然后基于模糊测试过程中实时的路径覆盖信息为经过稀有路径的样本增加其被挑选进行变异的概率;最后根据比较进度信息并结合启发式策略有针对性地对样本文件进行变异,通过变异引导提高模糊测试中生成能够绕过程序规约检查的有效样本的效率。实验结果表明,所提方法发现crash及发现新路径的能力均优于模糊测试工具AFL-Dyninst。 展开更多
关键词 导向性模糊测试 反馈式模糊测试 二进制模糊测试 程序插桩 漏洞挖掘
下载PDF
嵌入式软件路径覆盖测试数据采集 被引量:7
14
作者 于全喜 张毅坤 +1 位作者 胡燕京 朱伟 《计算机工程》 CAS CSCD 北大核心 2009年第21期54-56,59,共4页
分析嵌入式软件动态测试的特点及路径覆盖测试策略,设计动态测试数据采集处理框架,其中包含程序分析与插桩、测试数据采集传输、测试结果分析与处理3大子系统。以静态分析结果指导插桩,采用消息队列机制采集传输数据,并利用测试结果制... 分析嵌入式软件动态测试的特点及路径覆盖测试策略,设计动态测试数据采集处理框架,其中包含程序分析与插桩、测试数据采集传输、测试结果分析与处理3大子系统。以静态分析结果指导插桩,采用消息队列机制采集传输数据,并利用测试结果制作初步测试报告。通过测试实例分析模拟采集、处理一条路径数据的过程,证明该框架的可行性。 展开更多
关键词 路径覆盖测试 程序插桩 消息队列
下载PDF
嵌入式软件测试系统的设计与实现 被引量:14
15
作者 刘利枚 周鲜成 石彪 《国外电子测量技术》 2008年第1期59-61,共3页
随着嵌入式技术的发展,如何对它进行快速有效的测试已经成为现在的一大热点。本文提出了一种通用的嵌入式软件测试系统的基本框架图,该测试系统分为五个功能模块:功能测试模块,代码性能测试模块,数据分析和文档报告模块和通信接口转换... 随着嵌入式技术的发展,如何对它进行快速有效的测试已经成为现在的一大热点。本文提出了一种通用的嵌入式软件测试系统的基本框架图,该测试系统分为五个功能模块:功能测试模块,代码性能测试模块,数据分析和文档报告模块和通信接口转换模块。并且使用程序插桩的方法,设计并实现了基于汇编的嵌入式自动测试系统。有效的解决了传统手工测试程序带来的一些问题,满足了国内用户对嵌入式汇编进行测试的需求。 展开更多
关键词 嵌入式系统 程序插桩 软件测试
下载PDF
基于UML顺序图的面向对象软件簇级测试 被引量:3
16
作者 苏荟 张毅坤 +1 位作者 姚海波 费蓉 《计算机工程》 EI CAS CSCD 北大核心 2005年第24期78-79,101,共3页
提出了一种新的面向对象软件簇级测试方法,在UML顺序图的基础上,首先从*.MDL文档中提取出类间的交互信息;其次利用程序插桩技术从源代码中提取程序运行时类间的交互信息;最后将二者进行对比,验证源代码中类间信息交互是否正确。并通过... 提出了一种新的面向对象软件簇级测试方法,在UML顺序图的基础上,首先从*.MDL文档中提取出类间的交互信息;其次利用程序插桩技术从源代码中提取程序运行时类间的交互信息;最后将二者进行对比,验证源代码中类间信息交互是否正确。并通过实例对该方法的正确性和有效性进行了验证。 展开更多
关键词 面向对象软件 簇级测试 UML顺序图 程序插桩
下载PDF
面向对象代码变更影响分析模型的研究 被引量:3
17
作者 杨鹤标 陈震 《计算机工程与设计》 CSCD 北大核心 2010年第19期4232-4234,4246,共4页
为解决传统的变更影响分析技术与面向对象程序编程范型不完全兼容,从而导致分析结果不准确的问题,在分析面向对象程序设计中可能发生的变更的类型及其依赖关系的性质的基础上,提出了一种函数粒度的基于面向对象程序的变更影响分析模型... 为解决传统的变更影响分析技术与面向对象程序编程范型不完全兼容,从而导致分析结果不准确的问题,在分析面向对象程序设计中可能发生的变更的类型及其依赖关系的性质的基础上,提出了一种函数粒度的基于面向对象程序的变更影响分析模型。该模型将目标系统中的函数之间的关系抽象为函数关系图,采用静态分析和动态分析相结合的方法对函数关系图进行分析,从而检测出变更的影响范围及其程度。实验结果表明,该模型具有较高的准确度。 展开更多
关键词 变更影响 动态依赖 程序插桩 函数关系图 代码变更
下载PDF
基于多Agent的软件测试系统设计 被引量:3
18
作者 王伟 刘久富 +1 位作者 娄坚波 李金奎 《计算机技术与发展》 2011年第4期37-39,43,共4页
随着软件系统变得越来越复杂和庞大,如何对它进行快速有效的测试已经成为现在的一大热点。通过将Agent技术引入软件测试过程,设计了一种基于多Agent的软件测试系统。该系统由界面Agent模块、预处理Agent模块、程序插桩Agent模块和动态... 随着软件系统变得越来越复杂和庞大,如何对它进行快速有效的测试已经成为现在的一大热点。通过将Agent技术引入软件测试过程,设计了一种基于多Agent的软件测试系统。该系统由界面Agent模块、预处理Agent模块、程序插桩Agent模块和动态测试信息分析Agent模块组成,实现了软件语句和分支覆盖率的测试及查询覆盖率不满足要求时未覆盖目标的情况。有效地解决了传统手工测试程序运行效率低、繁琐等一些问题,保证了软件系统高效稳定的运行。 展开更多
关键词 软件测试 Agent模块 词法语法分析 程序插桩 覆盖测试
下载PDF
嵌入式软件路径覆盖测试的研究 被引量:2
19
作者 施冬梅 《计算机测量与控制》 CSCD 北大核心 2010年第10期2236-2237,2240,共3页
路径覆盖是软件测试中一种十分重要的方法,它使程序的每个分支至少执行一次;针对嵌入式软件测试的特点,提出了嵌入式软件路径覆盖测试的策略,通过模拟测试通用型智能水量计量仪C430主控程序的各个步骤,运用基本路径插桩策略分析计算插... 路径覆盖是软件测试中一种十分重要的方法,它使程序的每个分支至少执行一次;针对嵌入式软件测试的特点,提出了嵌入式软件路径覆盖测试的策略,通过模拟测试通用型智能水量计量仪C430主控程序的各个步骤,运用基本路径插桩策略分析计算插桩探针的位置、个数,统计计算整个探针的覆盖面,构造基本路径和实际程序执行路径;测试覆盖率达到71.1%,取得了一定的效果,对增强软件测试方案设计的系统性,提高软件测试质量和效率,起到了较好的作用。 展开更多
关键词 路径覆盖 软件测试 控制流程图 程序插桩
下载PDF
一种星载操作系统进程安全监控设计 被引量:2
20
作者 杨朋霖 陶利民 王海涛 《航天器工程》 CSCD 北大核心 2018年第2期81-87,共7页
太空网络环境具有开放性、随遇接入等特性,处于这种环境下的星载操作系统将面临来自网络的干扰和攻击等安全威胁。为此,文章提出了一种星载操作系统进程安全监控设计。通过插桩技术对星载操作系统的进程控制块数据和控制流数据进行采集... 太空网络环境具有开放性、随遇接入等特性,处于这种环境下的星载操作系统将面临来自网络的干扰和攻击等安全威胁。为此,文章提出了一种星载操作系统进程安全监控设计。通过插桩技术对星载操作系统的进程控制块数据和控制流数据进行采集,并结合可信计算芯片的保密存储和哈希(HASH)计算能力,对上述数据进行校验,可实现基于进程控制块和控制流的星载操作系统进程安全监控。该设计能够对星载操作系统的运行状态进行安全监控,及时发现恶意代码等的攻击,保证星载操作系统运行时的安全。 展开更多
关键词 星载操作系统 进程安全 程序插桩 可信计算
下载PDF
上一页 1 2 下一页 到第
使用帮助 返回顶部