共查询到19条相似文献,搜索用时 62 毫秒
1.
内存泄漏在采用显式内存管理机制的C语言中是一种常见的代码缺陷,内存泄漏的检测方法目前主要是静态分析与动态检测.动态检测开销大,且高度依赖测试用例;静态分析目前被学术界和工业界广泛应用,但是存在大量误报,需要人工对检测结果进行确认.内存泄漏静态分析的误报通常是由于对指针、分支语句和全局变量分析的不准确性导致的.提出了一种内存泄漏的智能化检测方法,通过使用机器学习算法学习程序特征与内存泄漏之间的相关性,构建机器学习分类器,并应用机器学习分类器进一步提高内存泄漏静态分析的准确性.首先构建机器学习分类器,然后通过静态分析方法构建从内存分配点开始的Sparse Value Flow Graph(SVFG),并从中提取内存泄漏相关特征,再使用规则和机器学习分类器进行内存泄漏的检测.实验结果显示,该方法在分析指针、分支语句和全局变量时是有效的,能够提高内存泄漏检测的准确性,降低内存泄漏检测结果的误报.最后,对未来研究的可行性以及面临的挑战进行了展望. 相似文献
2.
詹荣开 《电脑编程技巧与维护》2000,(6):32-33
在Windows编程中,内存的分配与释放是极易出错的操作。本文详细地介绍了怎样利用MFC中的有关函数和类来在应用程序的开发期间进行内存泄漏的检测。 相似文献
3.
4.
5.
一种混合式内存泄漏静态检测方法 总被引:1,自引:0,他引:1
内存泄漏是导致系统性能降低的重要问题.提出一种基于模型检测算法的内存泄漏静态检查方法TMC.该方法依据程序的控制流图构建对应于程序执行的有限状态自动机,进而在此基础上应用模型检测算法分析程序中可能存在的内存泄漏.论文利用几个典型的程序实例详细说明了TMC的工作原理,并通过基于内存操作密集的测试程序集PtrDist的实验对TMC进行了验证.实验结果表明,TMC能够显著提升内存泄漏分析的精度. 相似文献
6.
罗坤;金大海;宫云战 《小型微型计算机系统》2024,(7):1778-1786
内存泄漏在没有垃圾回收机制的语言中是常见的问题,虽然Fortran95引入ALLOCATABLE数组解决了部分泄漏问题,但是通过指针申请内存资源仍然会造成泄漏,现有研究对Fortran内存泄漏的检测流程适配度不高且面向Fortran内存状态分析的效率和精确度上仍存在优化空间.针对这一问题,本文提出了一种面向Fortran指针引发的内存泄漏静态检测方法.首先引入指针引用控制流图(PR-CFG,Pointer Reference-Control Flow Graph)来精简程序模型,并符号化程序节点的内存状态信息,依据数据流生成路径敏感的符号化函数摘要作用于过程间分析,最终通过PR-CFG节点上由抽象内存状态计算得到的内存状态集进行故障模式状态机的状态转化来实现内存泄漏的检测.实验表明,本方法提高了Fortran指针引发内存泄漏的检测精度和效率,降低了检测的误报率. 相似文献
7.
内存泄漏是软件系统中常见的一种错误,会持续消耗内存,致使系统运行效率下降,甚至导致系统崩溃。内存泄漏的检测工具主要可以分为两类:一类是使用基于程序扫描分析技术的静态工具;另一类则是监视实时内存分配状态进行判别的动态工具。如何评估工具检测内存泄漏的能力,相关的标准并不明确。通过对内存泄漏的认识与了解,对相关工具能力进行了调研与分析,提出了一个内存泄漏工具的评估标准。 相似文献
8.
邵叶秦 《数字社区&智能家居》2007,3(14):455-456
提出了一个有效的C 内存泄漏检测方法.方法在分析内存泄漏的基础上,通过重新实现动态内存分配和释放函数,记录内存分配的确切位置并跟踪动态内存的使用情况.在程序结束时,方法利用跟踪结果检测和定位内存泄漏.最后,通过在Windows和Linux平台上的实验验证了本文方法的有效性. 相似文献
9.
Qt继承了C++语言动态分配内存机制,保证了开发人员能根据实际需要灵活地使用内存,同时Qt也不可避免的要面对“内存泄漏”这个严重威胁软件安全的问题,虽然Qt采取了半自动化内存管理机制等措施,但不能从根本上解决问题。对此,提出了一种基于Qt的软件内存泄漏静态检测方法,该方法针对Qt的半自动化内存管理机制,通过静态分析被测对象中分配内存的代码识别出是否属于Qt自动管理的范围,从而准确地检测出内存泄漏和内存重复释放问题;并基于该检测方法设计了一种Qt内存泄漏自动检测工具,该工具能很大程度上提高测试效率。 相似文献
10.
Android应用程序的主体采用Java编程语言实现,Java语言的一个显著特点是它通过Java虚拟机和垃圾回收机制管理大部分的内存事务,但是在Java程序中不可避免地存在着内存泄漏的问题。本文从造成Android应用程序内存泄漏的原因入手,对内存泄漏进行检测和定位。阐述了在编写应用程序时规避内存泄漏的方法,并分别介绍了一种内存监测工具和一种内存分析工具的使用方法。 相似文献
11.
当前内存数据库(NoSQL)、嵌入式数据库技术在高并发高性能系统中得到了广泛的应用,但对于复杂对象数据的读取效率仍然低下,研究发现主要性能瓶颈有两个:一是内核态与用户态间的内存拷贝,拷贝消耗时间与复杂对象的数据量成线性增长;二是从数据库数据到运行时数据对象的格式转化操作,不但需要开辟新的内存空间存储运行时数据对象,而且还需要解析原始数据并拷贝至新对象之中。为此,提出了一种基于内存映射(memory mapping)文件的复杂对象共享读取方法。借助内存映射文件与自定义内存分配器,实现了结构复杂的C++标准模板库容器对象跨进程无拷贝、无格式转化的共享,有效降低了数据读取延时。通过性能的分析比较表明,与NoSQL内存数据库、嵌入式数据库比,读取性能效率提升10倍以上。再加上底层技术成熟稳定,复用了标准模板库,具有开发成本低、可维护性强、实用性高等优点,因此,适用于高并发高性能的高可用后台服务系统。 相似文献
12.
针对复杂环境对运动目标检测与跟踪产生的不利影响,提出一种自适应运动能量阈值结合精简彩色SIFT描述子的特定运动目标检测与跟踪方法。运用自适应运动能量阈值方法自动滤除复杂环境干扰以完成运动目标检测,由此形成目标匹配搜索域,并给出经主成份分析及精简后的彩色SIFT描述子( PCA-CSIFT )进行目标匹配,从而实现特定运动目标的连续跟踪。实验结果表明,在复杂环境下,运动目标检测方法对目标总量变化不敏感,错误率始终稳定在6.5%~34%之间。 PCA-CSIFT算法在保持高可区分性的同时错误匹配率为25.33%~28%,平均每帧处理时间不超过0.26 s,具有较好的鲁棒性与实时性。 相似文献
13.
14.
信号奇异性检测在输气管线泄漏检测中的应用 总被引:7,自引:0,他引:7
对小波变换的基本理论进行了简要的阐述,特别是信号奇异性检测。并以天然气管道泄漏后获得的相关信号为对象。利用小波分析方法来分析信号的奇异性及奇异性位置,从而应用到天然气管线泄漏检测中,仿真实验证明了该方法对管道泄漏诊断的精度,同时也显示出小波在滤波、定位等方面的优越性。 相似文献
15.
基于统计背景模型的运动目标检测方法 总被引:33,自引:0,他引:33
运动目标检测是计算机视觉、视频处理等应用领域的重要研究内容。其中减背景技术是一种常用方法。在减背景方法中,背景模型的提取、更新、背景扰动、外界光照条件变化、阴影检测等是必须要考虑的问题。提出了一种有效的运动目标检测方法,较好地解决了以上问题,首先利用统计的方法得到背景模型,并实时地对背景模型更新.以适应光线变化和场景本身的变化,用形态学方法和检测连通域面积进行后处理,消除噪声和背景扰动带来的影响,在HSV色度空间下检测阴影,得到准确的运动目标。实验结果表明,该方法是快速有效的。 相似文献
16.
基于帧间差分背景模型的运动物体检测与跟踪 总被引:8,自引:0,他引:8
针对背景差分算法中在复杂背景下参考帧的提取问题,提出了一种新的背景提取方法;该算法用帧间差分法将帧中的背景象素点检测出来,再确立出背景帧;由于排除了帧中运动物体的影响,因而提取出的背景干净,效果很好,然后运用背景差分检测出场景中的物体,最后采用一种新的运动物体跟踪算法,实现了运动物体和静止物体的识别,克服了以往检测算法中的误检和空洞问题,实验结果表明,该方法快速有效,能够满足实时性的要求. 相似文献
17.
运动目标的实时检测与跟踪是智能监控和视频活动识别应用的基本步骤.运动目标检测把场景分割为前景目标和背景区域,但是在这个过程申运动目标投射的阴影很容易被误分类为前景目标,这种误分类会造成多个目标的合并或目标形状的改变.为了改善运动目标分割的效果,提出一个基于光强、色度和反射率的实时阴影检测和消除的算法,该算法不需要目标的... 相似文献
18.
主要讨论了TM S34010及相关DRAM、VRAM存储器的动态检测技术及实现方案,同时讨论了实现对应集成电路动态检测方法,提出了一套检测系统方案,重点描述了工程化过程中ISA设备动态上电技术、TM S34010的测试技术及VRAM串行输出端口测试等几个关键技术,完成了完整的动态检测系统。 相似文献
19.
Main Memory Evaluation of Monitoring Queries Over Moving Objects 总被引:4,自引:0,他引:4
Dmitri V. Kalashnikov Sunil Prabhakar Susanne E. Hambrusch 《Distributed and Parallel Databases》2004,15(2):117-135
In this paper we evaluate several in-memory algorithms for efficient and scalable processing of continuous range queries over collections of moving objects. Constant updates to the index are avoided by query indexing. No constraints are imposed on the speed or path of moving objects or fraction of objects that move at any moment in time. We present a detailed analysis of a grid approach which shows the best results for both skewed and uniform data. A sorting based optimization is developed for significantly improving the cache hit-rate. Experimental evaluation establishes that indexing queries using the grid index yields orders of magnitude better performance than other index structures such as R*-trees. 相似文献