CherieLi Student

valgtind使用指南

2021-09-26
CherieLi

1、使用原生的开源工具Valgrind,可以参考官网:http://www.valgrind.org/

2、现主要使用该工具检测以下问题:

(1)写越界导致的踩内存问题

(2)内存free后仍在使用的问题

(3)错误使用未初始化内存

Valgrind是一套Linux下,开放源代码(GPL V2)的仿真调试工具的集合。Valgrind由内核(core)以及基于内核的其他调试工具组成。内核类似于一个框架(framework),它模拟了一个CPU环境,并提供服务给其他工具;而其他工具则类似于插件 (plug-in),利用内核提供的服务完成各种特定的内存调试任务。

Valgrind允许用户分析(profile)和调试Linux上的可执行程序。

Valgrind包含的内存检查工具Memcheck可以检测常见的内存错误。此类错误包括访问无效的内存,使用未初始化的值,不正确的释放内存,以及内存泄漏。然而,Memcheck不对静态数组的边界进行检查。

内存泄漏可以允许攻击者在受影响的程序上进行拒绝服务。

https://zhuanlan.zhihu.com/p/342958592 内存错误修复指南


上一篇 socket网络编程

Comments

Content