zoukankan      html  css  js  c++  java
  • Valgrind简介:

    Valgrind是动态分析工具的框架。有很多Valgrind工具可以自动的检测许多内存管理和多进程/线程的bugs,在细节上剖析你的程序。你也可以利用Valgrind框架来实现自己的工具。

    Valgrind通常包括6个工具:一个内存错误侦测工具,两个线程错误侦测工具,cache和分支预测的分析工具,堆的分析工具。

    Valgrind的使用与CPU OS以及编译器和C库都有关系。目前支持下面的平台:

    - x86/Linux

    - AMD64/Linux

    - PPC32/Linux

    - PPC64/Linux

    - ARM/Linux

    - x86/MacOSX

    - AMD64/MacOSX

    Valgrind是GNU v2下的开源软件,你可以从http://valgrind.org下载最新的源代码。

    Valgrind的安装:

    1.从http://valgrind.org下载最新的valgrind-3.7.0.tar.bz2d,用tar -xfvalgrind-3.7.0.tar.bz2解压安装包。

    2.执行./configure,检查安装要求的配置。

    3.执行make。

    4.执行make install,最好是用root权限。

    5.试着valgrind ls -l来检测是否正常工作。

    Valgrind的概述:

    Valgrind时建立动态分析工具的框架。它有一系列用于调试分析的工具。Valgrind的架构是组件化的,所以可以方便的添加新的工具而不影响当前的结构。

    下面的工具是安装时的标准配置:

    Memcheck:用于检测内存错误。它帮助c和c++的程序更正确。

    Cachegrind:用于分析cache和分支预测。它帮助程序执行得更快。

    Callgrind:用于函数调用的分析。

    Helgrind:用于分析多线程。

    DRD:也用于分析多线程。与Helgrind类似,但是用不同的分析技术,所以可以检测不同的问题。

    Massif:用于分析堆。它帮助程序精简内存的使用。

    SGcheck:检测栈和全局数组溢出的实验性工具,它和Memcheck互补使用。

  • 相关阅读:
    Anaconda设置虚拟环境并打包exe
    [转]Anaconda, conda, pyenv, virtualenv的区别
    [闲记]2020-2-13
    集合笔记
    Python_列表(list)
    LeetCode 1711. 大餐计数 做题小结
    LeetCode 242. 有效的字母异位词 做题小结
    GitHub Actions教程 使用selenium自动化
    LeetCode 5641. 卡车上的最大单元数 做题小结
    git 批量删除文件夹和文件
  • 原文地址:https://www.cnblogs.com/lvdongjie/p/4169214.html
Copyright © 2011-2022 走看看