- 博客(6)
- 收藏
- 关注
原创 【Linux内存泄漏专题】用户空间内存泄漏分析工具及使用方法
Valgrind工具集包含以下工具:1)Memcheck它是一个内存错误检测器,有了它的帮助可以让C和C++程序更加正确。2)Cachegrind它是一个缓存和分支预测分析器,它可以帮助你让你的程序运行得更快。3)Callgrind它是一个调用图生成缓存分析器,它与Cachegrind有一些重叠,但也收集了Cachegrind没有的一些信息。4)Helgrind它是一个线程错误检测器,它可以帮助你使你的多线程程序更加正确。5)DRD。
2025-01-14 23:53:06
1165
原创 【Linux内存管理专题】如何统计memblock阶段的内存使用?
在平时工作中,因为项目或者客户需求,经常会遇到内存裁剪或者优化的需求,内存裁剪和优化的前提是需要对目前系统的内存使用有个清晰的认识,知道内存都用在哪里,这样我们才可以评估这些内存是否有裁剪和优化的可能性。
2025-01-14 23:32:53
665
原创 【Linux内存泄漏专题】内核内存泄漏分析工具及使用方法
如果内核没有打开相关宏定义的话,则需要手动使能。Linux 内核的 Slab 内存分为两块,一个是 SReclaim,另一个是 SUnreclaim,从命名就可以知道,一个是可回收的,一个是不可回收的,我们排查是否有 Slab 内存泄漏主要关注 SUnreclaim。通过 /proc/meminfo 文件查看 SUnreclaim 数值是否有明显增大,若存在异常增加,则怀疑Slab存在内存泄漏。
2024-02-22 11:36:18
3427
3
原创 【Linux内存泄漏专题】如何分析Linux内存泄漏问题?
在计算机科学中,内存泄漏指由于疏忽或错误造成程序未能释放已经不再使用的内存。内存泄漏并非指内存在物理上的消失,而是应用程序分配某段内存后,由于设计错误,导致在释放该段内存之前就失去了对该段内存的控制,从而造成了内存的浪费。
2024-02-21 15:39:25
2304
原创 OpenWRT启动流程剖析
OpenWRT是一个嵌入式的Linux发行版,所以,它的启动流程会依赖于Linux内核的启动,例如:Linux汇编启动阶段时的0号进程的创建,以及后续C程序启动阶段的1号和2号进程的创建,也就是用户空间和内核空间的祖先进程,当然,它也有和原生Linux不一样的地方,这些启动阶段的差异也就是下面我们要重点介绍的内容。
2023-11-16 23:14:08
1989
3
原创 OpenWRT sysupgrade升级流程
OpenWRT提供了一套系统升级机制,可以通过命令行方式也可以通过网页方式,本文主要想介绍一下OpenWRT下sysupgrade常见的操作用法和sysupgrade升级流程,这里主要介绍了整个升级过程涉及到的进程,有了这个宏观上的升级流程后在深入到各个进程中去查看对应的功能,这么一套组合拳下来,相信大家会对OpenWRT的升级流程有更深的理解。
2023-11-07 00:38:35
15572
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人