Valgrind 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Valgrind 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Valgrind 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 GPL
开发语言 C/C++
操作系统 Linux
软件类型 开源软件
开源组织
地区 不详
投 递 者 不详
适用人群 未知
收录时间 2008-10-07

软件简介

Valgrind是一个运行时诊断工具,它可以监视 一个指定程序的活动并通知你在你的代码中可能存在的各种各样的内存管理问题。它类似于老式的Electric Fence工具(该工具将标准的内存分配函数替换为自己的函数以提高诊断能力),但被认为更容易使用并且在多个方面都提供了更丰富的功能——而且现在大多 数主流Linux发行版都提供了该工具,所以在你的系统中使用它不需要花费太多时间,你只需安装它的软件包即可。

一个典型的Valgrind运行可能如下所示:

输出显示有80个字节的内存在程序结束时丢失了。通过指定leak-check选项,我们可以找到这个泄漏的内存来自哪里:

你应该养成习惯在可能的情况下使用诸如 Valgrind这样的工具来对发现和修复内存泄漏以及其他编程错误的过程进行自动化。因为这里只对Valgrind进行了肤浅的介绍,所以你需要查看它 的在线文档以更全面的了解其功能。事实上,越来越多的开放源码项目都依赖于Valgrind作为其回归测试(任何一个具有相当规模的软件项目的一个重要组 成部分)的一部分。

自动化代码分析

有越来越多的第三方工具可以用于执行自动化代码分 析,寻找软件中各种典型类型的缺陷。这类代码覆盖工具一般提供静态、动态或混合形式的代码分析。这意味着工具可能只是检查源代码以确定潜在的缺陷,或它可 能试图钩入其他一些进程,以获取确定软件中缺陷可能存在位置所必需的数据。

基于斯坦福大学的checker的商业代码分析工具 Coverity经常被用在Linux系统中。它钩入编译过程并提取大量有用的信息,这些信息可用于发现很多潜在的问题。事实上,Coverity为越来 越多的开放源码项目提供免费代码分析。它甚至还发现了Linux内核中相当多的以前未被发现的错误。这些问题被发现后立即得到了解决。

静 态代码分析的一个比较有趣的用途是查找源代码中是否有非法使用GPL代码的情况。Blackduck软件就提供了这样一个工具,它可以帮助你扫描你的大型 软件项目,以查找借用自开放源码项目的源代码,并确定处理方法。这对兼容性测试以及其他的你的法律团队可能会提醒你进行的活动将非常有用。

展开阅读全文

评论

点击引领话题📣 发布并加入讨论🔥
发表了资讯
2016/10/26 00:00

Valgrind 3.12.0 发布,应用运行时诊断工具

Valgrind 3.12.0 发布,这是一个功能版本,有大量的改进和修复。 Valgrind 是一个运行时诊断工具,它可以监视 一个指定程序的活动并通知你在你的代码中可能存在的各种各样的内存管理问题。它类似于老式的 Electric Fence 工具(该工具将标准的内存分配函数替换为自己的函数以提高诊断能力),但被认为更容易使用并且在多个方面都提供了更丰富的功能——而且现在大多 数主流 Linux 发行版都提供了该工具,所以在你的系统中使用它...

3
11
发表了资讯
2014/12/04 00:00

Valgrind 3.10.1 发布,运行时诊断工具

Valgrind 3.10.1 发布,这是一个 bugfix 版本,修复 3.10.0 中报告的一些 bug,以及 AArch64 ARMv8 架构下的指令和系统调用的相关问题。详细列表请看这里。 Valgrind是一个运行时诊断工具,它可以监视 一个指定程序的活动并通知你在你的代码中可能存在的各种各样的内存管理问题。它类似于老式的Electric Fence工具(该工具将标准的内存分配函数替换为自己的函数以提高诊断能力),但被认为更容易使用并且在多个方面都提供了更丰...

4
22
发表了资讯
2013/11/05 00:00

Valgrind 3.9.0 发布,运行时诊断工具

Valgrind 3.9.0 发布了,值得关注的改进有: Support for MIPS64 LE and BE running Linux. Valgrind has been tested on MIPS64 Debian Squeeze and Debian Wheezy distributions. Support for MIPS DSP ASE on MIPS32 platforms. Support for s390x Decimal Floating Point instructions on hosts that have the DFP facility installed. Support for POWER8 (Power ISA 2.07) instructions Support for Intel AVX2 instruct...

9
18
发表了资讯
2012/05/04 00:00

Valgrind 3.7.0 发布,应用运行时诊断工具

Valgrind 3.7.0 发布,该版本增加对 ARM/Android, S390X/Linux, and Mac OS X 10.7 (Lion) 系统的支持;增加了一个 GDB 服务器,可通过 GDB 直接对应用进行控制;性能和功能上都有改进,涉及 Helgrind、DRD、Memcheck 和 exp-Sgcheck. Valgrind是一个运行时诊断工具,它可以监视 一个指定程序的活动并通知你在你的代码中可能存在的各种各样的内存管理问题。它类似于老式的Electric Fence工具(该工具将标准的内存分配函数替换为...

3
5
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
发表了博客
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
发表了问答
{{o.pubDate | formatDate}}

{{formatAllHtml(o.title)}}

{{parseInt(o.replyCount) | bigNumberTransform}}
{{parseInt(o.viewCount) | bigNumberTransform}}
没有更多内容
暂无内容
暂无内容
0 评论
89 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部