valgrind是适用于Linux,OS X,Android和Solaris系统的动态分析工具。它可用于分析以及查找内存泄漏,竞争条件和线程错误。
在 Kali VM 内的 docker 容器中运行 valgrind 时遇到问题
我正在尝试测试一个 C 程序,该程序打印字符并将转义字符处理到 docker 中的标准输出。我在 kali Linux 虚拟机中运行 docker。这是我的 dockerfile: 来自 archlinux:最新 工作目录/Lab3 ...
如何解决 Linux 内存扫描程序中未初始化值和无效读取的 Valgrind 错误
我目前正在为一项实验室作业开发一个内存扫描程序,其目标是读取和分析进程本身的内存映射,特别是从 /proc/self/maps 中读取。
我运行 valgrind 如下:- /usr/local/bin/valgrind“进程名称” 执行后它给我以下错误 ==21731== ==21731== 警告:无法执行 setuid/setgid 可执行文件: ==...
如何处理 valgrind 错误断言“VG_IS_WORD_ALIGNED(a)”失败
我们的程序的自动测试发现了 1 个模块的非常罕见的问题。测试包括使用我们的库在 valgrind (valgrind-3.18.1) 下运行示例程序。示例程序似乎完成了
我一直在开发一个小项目,就在完成间接调用下面的函数后,我开始收到 malloc:损坏的顶部大小错误。我已经使用 Valgrind 来...
我在使用 valgrind 时收到错误: ==696839== 堆摘要: ==696839== 退出时使用:1 块中 136 字节 ==696839== 总堆使用量:6 次分配,5 次释放,分配了 12,624 字节 ==
我有一个程序 myprog,我一直在 valgrind 下运行: /usr/bin/valgrind --tool=massif --tool=memcheck --leak-check=yes --track-origins=yes --log-file=/tmp/valgrind%p /opt/bin/myprog 我...
为什么基于 Valgrind 的 Helgrind 线程错误检测器和 Google ThreadSanitizer (TSan) 报告不同的数据竞争检测结果?
1.背景 ① 下面清单 1 中的 C++ 代码旨在处理 Produce 函数(在主线程上运行)和 Consume 函数(在 t 线程上运行)创建的 s 变量的数据竞争...
我在多线程程序中初始化数组时遇到了这个问题。 在 .c 程序的开头,我有一个数组的声明: 结构消息* messages_received_front[N_MAX];...
为什么使用两个版本的 gcc 编译器会得到不同的结果? 使用 gcc 版本 4.9.2,我的程序可以在没有核心转储的情况下编译和运行。但是使用 gcc 5.3 版本,它可以在没有任何 w...
我正在编写一个程序,必须将两个重叠的字符串复制到另一个中。环顾四周后,memmove 似乎是我完成这项任务所需要的。然而,它似乎不起作用......
我有大量的内存分配,由于复杂的同步问题和其他便利性,我只想让这个进程消失。 我不想写抑制文件。 是...
如何使用 EXPECT_DEBUG_DEATH Google 测试宏抑制 Valgrind 检测到的问题?
我遇到了 Google 单元测试框架和 valgrind 交互的问题。当我使用 EXPECT_DEBUG_DEATH 宏和 memcheck 使用 valgrind 测试代码时,我得到大量日志输出。 valgrind --e...
将valgrind移植到ARM板后,运行失败,错误提示需要libc6-dbg。 所以想下载libc6-dbg的源码进行交叉编译然后po...
我是编程新手,目前正在尝试编写一个可以使用多线程模拟 du 命令的程序。我的程序运行良好,但我不太确定有一些内存泄漏......
我已经开始使用 valgrind,特别是用于代码分析的工具“callgrind”。 首先,我创建了一个用于数值积分的共享库(我已经实现了一个
valgrind 'callgrind' 指令获取在运行之间有所不同
我目前正在分析 C++ 可执行文件以确定代码更改是否会影响性能。对于分析,我使用“valgrind/callgrind”。 我找不到任何文档,为什么“Ir”(说明读取)b...
我在管理 C 程序中的文件描述符方面面临挑战,特别是在 Pipex 项目的上下文中。程序退出后,Valgrind 报告有 5 个文件描述符打开,其中 3 个...
我在管理 C 程序中的文件描述符方面面临挑战,特别是在 Pipex 项目的上下文中。程序退出后,Valgrind 报告有 5 个文件描述符打开,其中 3 个...
有没有像Valgrind Memcheck之类的Windows工具可以在释放错误后调试使用? [已关闭]
在我的工作中,我经常遇到相当常见的编程错误 - 使用一些已经被释放的对象。这会调用 C++ 中的 UB。在linux上,此类问题通常可以通过使用