内存调试工具---valgrind

安装

1、到www.valgrind.org下载最新版valgrind-3.2.3.tar.bz2

2、解压安装包:tar –jxvf valgrind-3.2.3.tar.bz2

3、解压后生成目录valgrind-3.2.3

4、 cd valgrind-3.2.3

5、 ./configure

6、 Make;make install

7、运行“valgrind ls- l”测试valgrind是否已经正确安装到计算机上

使用

1、编译带上debug:gcc -Wall test.c -g -o test

2、运行程序:valgrind --tool=memcheck --leak-check=full ./test

时间: 2024-08-20 08:13:27

内存调试工具---valgrind的相关文章

valgrind 内存调试工具

一.valgrind 是运行在linux系统下的内存调试工具,支持很多对象:memcheck.addrcheck.cachegrind.Massif.helgrind.Callgrind等.使用valgrind时,必须指明想用的对象,若是省略对象名,默认运行memcheck.(目前只用到memcheck) 二.memcheck 参数选项说明(常用的一部分): 1.--leak-check=no | summary | full   :对内存泄漏检查强度大小,不检查 | 简易检查 | 全部检查:默

内存调试工具Electric Fence简易说明

内存调试工具Electric Fence简易说明 1 efence简介 程序中的内存越界读写会带来严重的问题,虽然有时问题不会立刻表现出来,但会埋下严重的隐患,总会有一天程序会莫名的崩溃,而且这种问题调查起来会很吃力.Efence(Electric Fence)可以在debug阶段帮我们最大程度的发现这种问题,并精确定位问题的所在. Efence有2个主要的功能: (1) 内存越界读写时抛出segmentation fault.当程序用malloc申请内存时,Efence会使用虚拟内存技术将分配

各个函数消耗的时间profiling和内存泄漏valgrind

来源:http://06110120wxc.blog.163.com/blog/static/37788161201333112445844/ ARM(hisi)上面的profiling和valgrind的安装 profiling的使用 GNU gprof能够打印出程序运行中各个函数消耗的时间,可以帮助程序员找出众多函数中耗时最多的函数.产生程序运行时候的函数调用关系,包括调用次数,可以帮助程序员分析程序的运行流程.有了函数的调用关系,这会让开发人员大大提高工作效率 gprof的基本用法: 1.

Linux内存调试工具初探-MEMWATCH

C 语言作为 Linux 系统上标准的编程语言给予了我们对动态内存分配很大的控制权.这种自由可能会导致严重的内存管理问题,可能导致程序崩溃或随时间的推移导致性能降级. 内存泄漏(即 malloc() 内存在对应的 free() 调用执行后永不被释放)和缓冲区溢出(例如对以前分配到某数组的内存进行写操作)是一些常见的问题,它们可能很难检测到.这一部分将讨论几个调试工具,它们极大地简化了检测和找出内存问题的过程 1. Memwatch简介Memwatch是C语言的内存检测器.除了检测内存的功能外,它

C++ 内存分析-valgrind

valgrind包括了以下几个比较重要的模块:memcheck, cachegrind, callgrind, helgrind, drd, massif, dhat, sgcheck, bbv. 还有一些小工具,但不是每个人都能用上,比如Lackey, Nulgrind. 在linux系统下下载源程序之后,通过./configure, make, make install命令安装在系统中. 用法: $valgrind  [valgrind-options]  your-prog  [your-

内存调试——valgrind工具对数组访问错误和内存泄漏的检测

下面的 C 程序分配了1024字节的内存,然后从分配的内存以外的区域读取数据,在分配内存尾部之后写数据,最后将该内存区域变得不可访问. #include <stdio.h> #include <stdlib.h> int main() { char *ptr = (char *)malloc( 1024 ); char ch; //Uninitialized read ch = ptr[1024]; //Write beyond the block ptr[1024] = 0; /

内存排查 valgrind

内存问题排查工具 --- valgrind 1. 概述 2. Valgrind 3. 内存泄漏监测 3.1. 示例代码 3.2. 编译它 3.3. 用Valgrind监测进程的内存泄漏 4. 悬挂指针 4.1. 示例代码 4.2. Valgrind运行结果 5. 多次释放同一个指针 5.1. 示例代码 5.2. Valgrind 监测 6. Valgrind的优缺点 6.1. Advantages 6.2. Disadvantages 7. Valgrind的其他工具 7.1. Cachegri

MIUI添加内存调试工具:查看进程中的Bitmap信息

Android开发中的内存管理一直是令人头痛的事情.其中占用内存最大的一般是Bitmap. 在上周五发布的MIUI开发版中,我添加了查看内存里Bitmap信息的功能.大家开发app的时候可以使用这个功能来查看分析app中的Bitmap情况. 使用方法:adb shell dumpsys gfxinfo [package name] [-b] [-e] adb shell dumpsys gfxinfo是Android原有的功能.我在此之上添加了一些参数来输出Bitmap信息. -b会输出进程中所

技术经典书籍收藏

每个资料都有下载衔接,大家可以直接下载, 都是免费的. C技术资料 C程序设计(第四版) 作者: 谭浩强 C程序设计(第四版) 华为C语言编程规范 华为C语言编程规范 The C Programming language 作者: Brian W.Kernighan and Dennis M.Ritchie The C Programming language C程序设计语言(第2版) 作者: Brian W.Kernighan,Dennis M.Ritchie C程序设计语言(第2版) Linu