首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 328 毫秒
1.
针对可执行文件的动态内存管理容易产生的错误,设计并实现了一个Linux 平台下针对C/C++语言的动态内存检测模块DDMEM,使用自定义的ddmemMalloc()函数改写动态分配函数malloc(),实现了一个共享库ddmem.so,可以检测内存泄漏、内存写溢出、释放野指针和内存管理函数的不匹配等问题。给出了函数不匹配的实例检测以验证方法的有效性。并与同类有代表性的检测工具memwatch进行了性能比较,证明该检测模块比memwatch整体更优。  相似文献   

2.
C语言程序设计的健壮性与安全性研究   总被引:1,自引:0,他引:1  
C语言的灵活性、高效率及庞大的用户群,使得其具有广阔的应用市场。设计高效、健壮、安全的C语言程序,一直是一种挑战。文章指出了在C语言程序设计中必须注意的问题,即类型转换不匹配、数组越界、指针非法访问、内存泄漏等。  相似文献   

3.
陈楠 《计算机系统应用》2016,25(12):262-267
通过对地球物理软件研发过程中比较常见内存错误的调研与总结,设计并实现了一个基于C/C++的动态内存检测工具,采用内嵌与关键函数截获方式,对编译器开放接口进行扩展与改进.该工具通过对软件运行过程中堆内存使用情况的实时收集、分类统计与分析,达到动态的监控与检测内存堆栈错误的目的.以中国石化石油物探技术研究院自主研发的油气综合解释系统NEWS子系统-叠前叠后联合解释模块主要流程为例,用该检测工具对其进行全面的测试与应用.实践表明,嵌入监测器的应用软件在开发过程中大幅降低了内存泄漏现象,运行时减少了内存错误导致的异常崩溃现象,提高了应用软件的稳定性,并能够对开发以及测试人员快速定位与分析软件错误起到较强的指导作用.  相似文献   

4.
Linux平台下基于源代码插装的动态内存检测   总被引:1,自引:0,他引:1  
在C/C++语言程序中.指针的使用使代码灵活、简便.但所带来的类似内存泄漏、内存写溢出等的内存使用的错误却很难分析和消除.针对这些容易出现的内存使用错误.提出了Linux平台下一种基于源文件信息提取和源代码插装的动态内存检测方法,设计实现了一个动态内存检测模块DDMEM.可以检测源代码的内存泄漏、内存写溢出、释放野指针和内存管理函数的不匹配等问题.给出了写溢出错误的一个实例检测,以验证方法的有效性.  相似文献   

5.
为了高效地管理内存,防止内存泄漏、越界访问等问题的出现,在分析传统动态内存管理机制的基础上,提出了一种基于Windows虚拟内存管理的高效动态内存管理机制.通过创建内存管理器来维护虚拟地址空间和处理内存申请和释放请求,改进了传统动态内存分配与回收算法,并在VC++6.0开发平台上实现了该动态内存管理机制.测试结果分析表明,该方法有效降低了申请与释放内存的时间耗费,减少了内存碎片的产生,提高了动态内存管理效率.  相似文献   

6.
一个动态内存管理模块的实现   总被引:2,自引:0,他引:2  
介绍一个动态内存管理模块,可以有效地检测C程序中内存泄漏和写内存越界等错误,适用于具有标准C语言开发环境的各种平台.  相似文献   

7.
《程序员》2007,(7):13-18
内存操作常见错误 通常在内存操作上,存在以下常见的错误: 读写已经释放的内存 读写内存越界 使用还未初始化的变量 内存泄漏 多次释放同一块内存  相似文献   

8.
针对内存的动态分配和释放特点,文章提出了一种有效的C++内存泄漏自检测方法,给出了该方法的对象行为结构模型以及内存动态分配和释放的具体实现。基于顺序存储数据结构的实验及分析表明,该方法不仅能正确地动态分配和释放类对象和数组块内存,还能监视所运行的程序中是否存在内存泄漏。该方法已经成功应用于算法设计和系统实现中,具有简单、速度快的优点。  相似文献   

9.
在航天领域中,安全关键的大型实时软件系统往往直接影响到任务成败,一般难以全面检测、分析或避免内存泄漏等常见内存错误。定义了实时软件的12种典型内存故障模式,提出了一种基于C++代码插装的实时软件内存错误快速分析方法。该方法通过对C++源代码进行静态分析,获取指针变量相关信息;通过C++代码插装和运行不同测试用例,实时收集统计C++指针对象的分配、释放、赋值、c-use和p-use使用情况,结合实时软件的典型内存故障模式进行分析,并自动生成详情报告。应用案例表明,该方法能够高效快捷地发现实时软件潜在的典型内存错误,从而有效提高软件质量。  相似文献   

10.
王磊  茅兵  谢立 《计算机科学》2010,37(1):153-157
内存腐烂攻击在软件安全攻击中占据着较大的比重。近来,动态着色技术得到了越来越多的关注,这种技术通过在访问内存时检测指针的完整性来抵御攻击。然而,存在一类可以绕过指针完整性检查的策略来进行攻击的实例,比如数组的越界访问攻击。提出了一种基于动态着色跟踪分析的方法来解决这类已有着色技术不能检测的问题。其思想是,借助于内存访问控制的思路,首先像已有的动态着色技术那样,在内存访问时对指针进行完整性检查,然后检查指针将要访问的内存区域是否处于指针合理的访问范围之内。原型系统是基于Valgrind的,并不需要源码,因此可以用于很多商业软件。初步实验验证结果表明,该方法可以有效地检测出很多类型的攻击,系统的性能损耗接近于Memcheck这种常用的内存错误检测工具。  相似文献   

11.
C/C + +源代码风格检测工具的实现   总被引:1,自引:0,他引:1  
陈丹伟  李军  刘继兴 《计算机应用》2003,23(10):140-142
文中给出了评价C/C 源代码风格的规则分类和检查工具的总体结构,阐述了代码检查工具的核心技术——扩展词法分析和扩展语法分析,给出了代码检测工具的应用实例。  相似文献   

12.
随着计算机网络技术和分布式技术的发展,COM技术越来越被重视。文中对COM的基本机制进行了深入地剖析,对COM技术的底层实现进行了详细的讨论,并在此基础上,用C++实现了一个进程内服务器,通过实例详细讨论了C++在实现COM时所涉及的技术。  相似文献   

13.
本文分析了目前最为流行的面向对象的开发工具C 的对象布局,并进一步分析了其形成原因。  相似文献   

14.
IDL与VisualC/C++语言进行混合编程的方法研究   总被引:4,自引:1,他引:3  
介绍将VisualC/C++和IDL语言的诸多特点相互结合、相互补充以进行应用程序开发的技术,并用简单、代表性的实例程序进行验证。实践证明,在共享目标库机制上实现IDL与VisualC/C++的混合编程技术,可以实现两种语言的资源和功能共享,达到优势互补。  相似文献   

15.
在利用MATLAB中的有关工具箱进行的系统仿真研究中,系统通常是利用其提供的仿真模块.虽然它比较直观,但仿真过程缓慢,且结构复杂,不易修改.通过利用Simulink 和C/C 混合编程技术建立的仿真系统,充分结合了Simulink 和C/C 语言各自的优点和长处,实现了高运行效率和高可视化.由于它的简单化、集成化,这种混合技术不但适用于系统仿真,而且有很好的工程应用价值.  相似文献   

16.
深入分析了拷贝构造函数和转换构造函数的作用和实现方法,并指出了程序设计中出现的问题和解决方法。  相似文献   

17.
图像识别预处理的C++编程实现技巧   总被引:6,自引:0,他引:6  
给出了用神经网络进行手写文字识别时对待识别图像文件预处理的处理方案,以BMP图像为例,用C++实现256色灰度图的读取、边框检出、归一化处理,最终得到了满足训练网络要求的标准位图。对于其它彩色位图(如24位真彩色拉图),可容易类推得到相应处理方案。  相似文献   

18.
在C++ Builder的程序开发中,通过OLE Automation技术,实现Word的自动化。  相似文献   

19.
实时嵌入式系统不仅对运算结果的正确性有要求,而且对产生结果所需要的时间也有要求,即要求在一定的时间内产生运算结果.本文详细介绍了优化C/C++代码性能的方法,包括如何利用软件流水进行优化、如何优化循环、如何优化控制代码等,并通过在实际硬件上的对比测试,验证了优化前后代码性能的提升.  相似文献   

20.
在Windows编程中图像处理相对比较复杂,好在C++Builder提供了一些图形类,它们通过对Windows中的图形对象进行包装,从而大大简化了图像操作的难度.本文通过对图像进行柔化、锐化、浮雕效果等几个特殊效果处理进行具体说明.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司  京ICP备09084417号