首页 | 本学科首页   官方微博 | 高级检索  
相似文献
 共查询到20条相似文献,搜索用时 15 毫秒
1.
一个动态内存管理模块的实现   总被引:4,自引:0,他引:4  
介绍一个动态内存管理模块,可以有效地检测C程序中内存泄漏和写内存越界等错误,适用于具有标准C语言开发环境的各种平台。  相似文献   

2.
基于Linux的动态内存检测工具的设计与实现   总被引:2,自引:0,他引:2  
内存的动态内存使用问题是C/C++程序员永远面临的问题。针对内存管理和使用的各类错误,设计并实现一个基于Linux的动态内存检测模块,可以对源码程序检测出内存泄漏、内存写溢出、“野指针”操作和内存管理函数的不匹配等问题。实验结果表明,系统具有效率高、易用性好的特点。  相似文献   

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

4.
C语言动态内存分配研究及应用   总被引:2,自引:0,他引:2  
介绍了C语言中几种内存分配方式,对几种方式的特点进行了对比,然后详细讨论了动态内存分配的实现方法,并分析了在实际应用中存在的问题,最后给出一个实例,说明动态内存分配在C语言程序设计方面的优越性。  相似文献   

5.
Linux下面向函数的动态内存泄漏监测   总被引:4,自引:1,他引:4  
动态内存泄漏是一个严重的编程错误,可以导致程序的错误行为。由于定位内存泄漏发生的位置是困难的,一些工具已被开发出来辅助程序员找出内存泄漏。论文提出了面向函数的动态内存泄漏监测的概念,阐述了它的必要性和有效性,并给出了在Linux下的实现。  相似文献   

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

7.
一种适用嵌入式系统的自适应动态内存管理方案   总被引:1,自引:0,他引:1  
王铮  李志军 《微机发展》2007,17(3):48-50
实时性、可靠性、高效性的要求,使得许多嵌入式应用使用自己的内存管理方案。任何内存碎片的产生无疑都是对大块内存频繁分割造成的,适当减少对大块内存的分割,就会减少内存碎片的产生,但在减少分割内存块的同时又如何才能满足系统对内存的需求呢?文中在对当今最常用的两种内存分配算法分析的基础上提出一种新的适用于嵌入式系统的内存管理算法——自适应动态内存分配算法,重点就如何减少内存碎片,提高内存利用率,提出了新的构想与实现。望其成为嵌入式系统中内存管理算法的模板。  相似文献   

8.
实时性、可靠性、高效性的要求,使得许多嵌入式应用使用自己的内存管理方案。任何内存碎片的产生无疑都是对大块内存频繁分割造成的,适当减少对大块内存的分割,就会减少内存碎片的产生,但在减少分割内存块的同时又如何才能满足系统对内存的需求呢?文中在对当今最常用的两种内存分配算法分析的基础上提出一种新的适用于嵌入式系统的内存管理算法——自适应动态内存分配算法,重点就如何减少内存碎片,提高内存利用率,提出了新的构想与实现。望其成为嵌入式系统中内存管理算法的模板。  相似文献   

9.
Borland公司的C~( )开发环境以其方便、快捷的优点受到了许多开发人员的喜爱,在国内拥有大量的使用者。然而,在该公司最新推出的Borland C~( )4.5中却存在一个严重的错误,如果不采取专门措施来修补这个错误,则用BC~( )4.5编译的所有使用动态内存分配的程序都是不安全的。 一、错误现象  相似文献   

10.
针对嵌入式软件中的内存泄露、内存写溢出等问题,提出嵌入式Linux平台下数据采集和测试分离的交叉测试方法,设计实现一个嵌入式软件动态内存的检测工具。该工具可以检测软件的内存泄露、内存写溢出、释放野指针和内存管理函数不匹配等问题,通过一个实例验证其有效性和可靠性。  相似文献   

11.
C语言动态内存的安全操作   总被引:1,自引:0,他引:1  
一、C语言的动态内存操作 C语言具有很强的动态内存操作功能。以Turbo C为例,动态内存操作函数有: 1.manoc 原型:void * malloc(unsigned int size); 功能:申请一块size字节的内存空间; 返回:失败时返回NULL,成功时返回申请空间  相似文献   

12.
Nucleus PLUS是一种嵌入式实时操作系统内核,其内存管理采用实存储器管理技术.本文详细研究了 Nucleus PLUS动态内存管理机制及实现细节,针对主要系统函数介绍测试思路及测试用例设计方法.最后从内存碎片和内存越界风险两个角度对该内存管理机制进行评估,提出改进措施和内存越界检测方法.为基于本版本 Nucleus PLUS的嵌入式开发在动态内存使用方面提供参考和指导.  相似文献   

13.
C语言动态内存操作错误的自动检测   总被引:1,自引:0,他引:1  
汤颢 《微电脑世界》1993,(10):22-24
该文指出了C程序动态内存分配、使用和释放过程中极易出现的各种错误类型,论述了错误自动检测的原理和方法,并给出了一个测试示例。  相似文献   

14.
提出了一个有效的C 内存泄漏检测方法.方法在分析内存泄漏的基础上,通过重新实现动态内存分配和释放函数,记录内存分配的确切位置并跟踪动态内存的使用情况.在程序结束时,方法利用跟踪结果检测和定位内存泄漏.最后,通过在Windows和Linux平台上的实验验证了本文方法的有效性.  相似文献   

15.
内存泄漏故障是一个程序员所必须关心的问题之一。通过对内存泄漏及其相关检测技术的研究,提出面向类型的动态内存泄漏检测的概念,使泄漏检测具有较高的实时性,大大降低由于内存泄漏检测而导致CPU占用时间的急剧变化值,并在Linux下验证了算法的真实有效性。  相似文献   

16.
为减少长期运行的Windows应用程序持续堆内存泄漏而造成的系统性能损失,设计并实现了一个运行时自动垃圾回收器RT-AGC。RT-AGC采用传统Mark—Sweep算法的一个变种,对回收触发条件进行改进,使其具有更大的灵活性。利用Windows下应用程序的存储结构和系统API函数,通过扫描可能存储指针变量的区域,RT—AGC可以在应用程序运行时检测并处理内存泄漏,而不需要对目标应用程序重新编译或链接。文中描述了所采用的关键算法流程和主要实现技术,并编写了测试程序对RT—AGC的回收效果进行验证。实验证明可以有效地抑制应用程序的内存泄漏。  相似文献   

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

18.
肖蕾  刘克江 《软件工程师》2016,(4):59-60,58
本文基于现有嵌入式操作系统动态内存管理机制的原理,研究和分析了μC/OS、free RTOS等多个微型嵌入式操作系统内存管理的优缺点,以多平台通用、高效率、简单易用为目标,实现了一种新的动态内存管理机制,主要适用于不使用操作系统或使用小型操作系统的嵌入式产品中,有效解决了动态内存的管理问题。  相似文献   

19.
嵌入式系统的自适应动态内存分配算法   总被引:1,自引:0,他引:1  
李志军  王铮  王帅 《计算机工程》2007,33(20):91-93
分析了2种常用的动态内存管理算法,基于此提出了一种新的适用与嵌入式系统的动态内存管理方案,在融合了经典算法精髓的同时,通过引入特殊的数据结构,避免了常用算法某些方面的不足,使其更能满足嵌入式系统对内存管理的特殊需求。  相似文献   

20.
μC/OS-Ⅱ原有内存管理模块存在着较为普遍的内存碎片,无法提供接口查找合适尺寸的内存块,且扩充动态内存量不灵活,总的功能较弱.该文根据RTOS中DSA(Dynamic Storage Allocation)的高效、快速、可靠、方便与节约的需求,分析、采纳并定制了TSLF(Two-level Segregated Fit)在μC/OS-Ⅱ上的应用.最后,做了对比实验,实验数据表明了μC/OS-Ⅱ新的DSA较原有DSA具有较大的改进效果.  相似文献   

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

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