Moh*_*era 1 linux memory-leaks memory-management linux-kernel android-kernel
相互之间是否有任何特殊用途/优势(kmemleak和kmemcheck)?我可以在Android操作系统(不是Linux操作系统)上启用这些工具,请指导我如何操作.
参考:https ://www.kernel.org/doc/Documentation/kmemcheck.txt https://www.kernel.org/doc/Documentation/kmemleak.txt
Kmemleak和Kmemcheck执行不同的任务,没有一个比另一个好.
1. Kmemleak检查内核是否分配了一些内存块但是没有释放(即检查内核中的内存泄漏,因此命名).性能开销通常是可以接受的.
2. Kmemcheck检查某些内核代码是否访问未初始化的内存.示例:内核代码分配一个结构,不会用值填充它,然后从该结构中读取内容.Kmemcheck应该检测到这一点.
顺便说一句,Kmemcheck没有检查内存泄漏.
Kmemcheck通常会使系统变慢,以至于无法使用图形环境.引导过程也可能变得非常慢(并且可能失败).
如果我没弄错的话,Kmemleak至少可以用于x86和ARM.Kmemcheck仅限x86.
4.不幸的是,我不能说如何在Android上启用Kmemleak,我只在桌面Linux系统上使用它.
5.根据您要完成的工作,可能会有更好的工具满足您的需求.例如,Linux内核具有可以启用和内置的各种调试功能.同样,我在这方面没有使用Android内核的经验.
| 归档时间: |
|
| 查看次数: |
1896 次 |
| 最近记录: |