内存管理-31-系统内存统计-6-dumpsys meminfo
一、dumpsys meminfo命令数据格式
Exynos:/ # dumpsys meminfo Applications Memory Usage (in Kilobytes): Uptime: 9463100 Realtime: 9463100 Total PSS by process: 452,701K: com.sumsung.speech (pid 2297) 266,607K: system (pid 936) 79,088K: vendor.qti.hardware.camera.provider@1.0-service (pid 1564) 52,260K: surfaceflinger (pid 632) 24,227K: logd (pid 511) 20,113K: media.codec (pid 844) 17,532K: zygote (pid 549) 14,423K: zygote64 (pid 548) 9,137K: audioserver (pid 624) 548K: lmkd (pid 630) Total PSS by OOM adjustment: 393,763K: Native 52,260K: surfaceflinger (pid 632) 25,566K: android.hardware.automotive.vehicle@2.0-service (pid 589) 24,227K: logd (pid 511) 20,113K: media.codec (pid 844) 17,532K: zygote (pid 549) 14,423K: zygote64 (pid 548) 9,137K: audioserver (pid 624) 8,621K: vendor.xpeng.imgproc@1.0-service (pid 854) 548K: lmkd (pid 630) 266,607K: System 266,607K: system (pid 936) 1,309,857K: Persistent 95,245K: com.sumsung.systemui (pid 1260) 18,996K: com.android.car (pid 1060) 6,800K: com.android.se (pid 2024) 271,652K: Foreground 142,321K: com.sumsung.carcontrol (pid 4206 / activities) 87,433K: com.sumsung.music (pid 3140 / activities) 715,782K: Visible 452,701K: com.sumsung.speech (pid 2297) 5,088K: android.ext.services (pid 1472) 285,489K: Perceptible 108,827K: com.sumsung.xpime (pid 3369) 34,151K: com.sumsung.car.settings (pid 1280) 28,144K: com.sumsung.coreservice (pid 3984) 9,471K: Home 9,471K: com.sumsung.home (pid 4093) 112,145K: B Services 38,961K: com.sumsung.btphone (pid 3392 / activities) 31,811K: com.sumsung.diagnostic (pid 3116) 38,798K: Cached 15,407K: com.sumsung.autoshow (pid 4099) Total PSS by category: 901,193K: Native 427,198K: Dalvik 367,234K: .dex mmap 285,568K: .so mmap 265,684K: Gfx dev 215,416K: EGL mtrack 200,467K: .art mmap 187,508K: Unknown 176,136K: GL mtrack 147,411K: .apk mmap 93,702K: Other mmap 92,178K: Dalvik Other 24,021K: .oat mmap 10,096K: Ashmem 5,868K: Stack 2,332K: .ttf mmap 1,364K: Other dev 188K: .jar mmap 0K: Cursor 0K: Other mtrack Total RAM: 7,994,116K (status critical) Free RAM: 3,648,862K ( 38,798K cached pss + 233,312K cached kernel + 3,376,752K free) Used RAM: 4,129,262K (3,364,766K used pss + 764,496K kernel) Lost RAM: 215,980K ZRAM: 12K physical used for 0K in swap ( 524,284K total swap) Tuning: 256 (large 512), oom 322,560K, restore limit 107,520K (high-end-gfx)
注:"Total PSS by OOM adjustment" 下的 Persistent 类型的app,被kill掉后会自动重启。
1. 相关名词介绍
RSS(Resident Set Size):
这是进程当前在物理内存中占用的空间,包括进程本身和所有链接库。RSS是评估进程内存占用的一个重要指标,它直接反映了进程当前实际使用的物理内存量。但由于包含了共享库,用处不大。
PSS(Proportional Set Size):
与RSS不同,PSS考虑了共享内存的情况,它计算了每个进程对共享内存的贡献,并通过等比例来分配共享内存的使用量。PSS更适合用来比较不同进程的内存使用情况,因为它避免了重复计算共享内存的问题。
此数据非常有用,因为系统中所有进程的PSS都相加的话,就刚好反映了系统中的总共被占用的内存量。而当一个进程被销毁之后, 其占用的共享库那部分比例的PSS,将会再次按比例分配给余下使用该库的进程。
USS(Unique Set Size):
这是进程独占的物理内存量,不考虑共享库占用的内存。USS可以用来计算某个进程真正独占的内存资源。
USS是非常有用的数据,因为它反映了运行一个特定进程真实的边际成本(增量成本)。当一个进程被销毁后,USS是真实返回给系统的内存。当进程中存在一个可疑的内存泄露时,USS是最佳观察数据。
VSS(Virtual Set Size)
虚拟内存占用,包含共享库,以及分配但未使用内存。其大小还包括可能不在RAM中的内存(比如虽然malloc分配了空间,但尚未写入)。VSS 很少被用于判断一个进程的真实内存使用量,用处不大。
posted on 2024-10-16 21:15 Hello-World3 阅读(41) 评论(0) 编辑 收藏 举报