我正在研究 Valgrind 以帮助改进我的 C 编码/调试,当时我发现它仅适用于 Linux - 我没有其他需要或兴趣将我的操作系统迁移到 Linux,所以我想知道是否有一个同样好的程序 window 。
最佳答案
正如 jakobengblom2 所指出的,valgrind 有一套工具。根据您所谈论的,有不同的 Windows 柜台部件。我这里只提OSS或者免费工具。
1.内存检查:
博士。内存。这是一个相对较新的工具,在 Windows 7 上运行良好。我最喜欢的功能是它在报告中对相同的泄漏分配堆栈进行分组。
http://code.google.com/p/drmemory/
我也使用过 UMDH(http://support.microsoft.com/kb/268343),发现它非常有用且易于设置。它适用于Win2000到Win7。
AppVerifier 是 Windows 原生代码开发人员必备的瑞士刀,它的“内存”检查器也有类似的工作 http://msdn.microsoft.com/en-us/library/dd371695%28v=vs.85%29.aspx
<强>2。调用研磨:
我最喜欢的是verysleepy (http://www.codersnotes.com/sleepy),它很小但非常有用且易于使用。
如果您需要更多功能,AMD CodeAnalyst™ 性能分析器是免费的: http://developer.amd.com/documentation/videos/pages/introductiontoamdcodeanalystperformanceanalyzer.aspx
Windows 性能分析工具是微软免费提供的,虽然不是很容易使用,但如果您愿意花时间,可以完成工作。 http://blogs.microsoft.co.il/blogs/sasha/archive/2008/03/15/xperf-windows-performance-toolkit.aspx 下载: http://msdn.microsoft.com/en-us/performance/cc752957
3.地 block :
Windows 上的类似(不完全匹配)免费工具有:
来自 sysinternals 的 VMMap:http://technet.microsoft.com/en-us/sysinternals/dd535533
!windbg 中的堆命令:http://hacksoflife.blogspot.com/2009/06/heap-debugging-memoryresource-leak-with.html
4.缓存研磨:
上面提到的 Windows 性能工具具有一定水平的 L2 缓存未命中分析能力,但不如 Cachegrind 好和易于使用。
5. DRD:
还没有在 Windows 上找到任何免费且功能强大的东西,我能找到的唯一一个稍微接近的 Windows 免费工具是“锁定”检查器 应用验证器: http://msdn.microsoft.com/en-us/library/dd371695%28v=vs.85%29.aspx
关于c - 有没有很好的 Valgrind 替代 Windows?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1502799/