【问题标题】:CMA Problems (Mistakes on Design)CMA 问题(设计错误)
【发布时间】:2019-06-14 22:48:57
【问题描述】:

CMA 问题

1.预留连续的内存空间,让连续的内存分配成为该区域的主客户端。

2.与二级客户端共享保留区域。

3.每当主客户端请求时,回收辅助客户端使用的内存。

上述问题会导致延迟问题和分配失败。 以上问题有解决办法吗?

【问题讨论】:

  • 您添加了几个似乎与您的问题无关的标签。你想解决什么问题?要调试内存泄漏,您可以使用valgrind
  • @Bodo 再次看到这个问题,如果你有任何问题,请告诉我。
  • 您应该详细说明您的程序、编程语言和开发环境。为什么你认为这是内存碎片?也许你没有释放你分配的所有内存。搜索关键字“valgrind”和“android”将我带到了 AddressSanitizer,请参阅 source.android.com/devices/tech/debug/asan.html
  • @Bodo ,请参阅更新后的问题。

标签: linux debugging memory memory-management memory-leaks


【解决方案1】:

strace 用于了解程序在运行时发出的不同系统调用和信号。您的程序无需调试构建。

示例: strace ls

这将给出ls 命令在执行时进行的所有系统调用。

ptrace 系统调用提供了一种方法,父进程可以通过该方法观察和控制另一个进程的执行,并检查和更改其核心映像和寄存器。主要用于实现断点调试和系统调用跟踪。

【讨论】:

  • ptrace 呢?您能否详细说明上述声明,已阅读手册页。
  • 这不是正确的方法 - 你已经完全改变了问题。如果您想问一个新问题,请发布一个新问题-不要更新旧问题
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-10-14
  • 2017-10-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多