【问题标题】:understanding dumpsys meminfo了解 dumpsys meminfo
【发布时间】:2012-07-27 18:52:12
【问题描述】:

我有两个问题。

  1. dumpsys meminfo 中,有一个号码叫Local Binders。这是什么意思?它只是一种本机指针吗?在什么情况下这个数字会增加?我观察到当这个数字增加到大约 1000 时,应用程序甚至模拟器都会崩溃。

  2. 在内存使用部分,共有三列:nativedalviktotaltotal=native+dalvik。那么为什么将这两部分(nativedalvik)加在一起呢? dalvik heap 不是指的Java堆,应该是Unix进程数据段的一部分吗?

【问题讨论】:

    标签: android memory android-binder


    【解决方案1】:
    1. 我认为本地活页夹是活页夹服务, 例如框架将创建一个ApplicationThread,它是一个binder服务,当进程从zygote分叉时。

    进程每创建一个binder服务,数量就会增加。

    更重要的是,binder 需要在内核空间中分配的 binder 缓冲区,而 内核空间对系统来说是非常宝贵的,所以过多的 binder service 可能会造成一些麻烦。

    1. 本机堆供 c/c++ 使用,当您调用 malloc, new 时。 dalvik heap 是供 java 使用的,它由 dalvik(GC ?) vm 管理,当你调用 new 来创建 java 对象时

    【讨论】:

      【解决方案2】:

      dumpsys 的输出最好通过阅读其源代码来理解。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2013-07-29
        • 1970-01-01
        • 2015-09-01
        • 2020-09-17
        • 2012-10-26
        • 1970-01-01
        • 2012-01-20
        • 1970-01-01
        相关资源
        最近更新 更多