内存信息查看
手机内存分配
-
Kernel Pre-allocation 内核预分配的 物理总内存 - MemTotal,包含各个模块reserved该部分可以在开机过程中内核中查看,也可以在开机log中看kernel的 code、rwdata、rodata、init、bss、reserved
eg: Reserved memory: reserved region for node 'external_image__region@0': base 0x87b00000, size 5 MiB 02-05 04:55:33.424 0 0 I Reserved memory: reserved region for node 'modem_adsp_region@0': base 0x88000000, size 80 MiB 02-05 04:55:33.424 0 0 I Reserved memory: reserved region for node 'pheripheral_region@0': base 0x8d000000, size 5 MiB 02-05 04:55:33.424 0 0 I Reserved memory: reserved region for node 'splash_region@83000000': base 0x83000000, size 12 MiB 02-05 04:55:33.424 0 0 I Removed memory: created DMA memory pool at 0x87b00000, size 5 MiB 02-05 04:55:33.424 0 0 I Reserved memory: initialized node external_image__region@0, compatible id removed-dma-pool 02-05 04:55:33.424 0 0 I Removed memory: created DMA memory pool at 0x88000000, size 80 MiB 02-05 04:55:33.424 0 0 I Reserved memory: initialized node modem_adsp_region@0, compatible id removed-dma-pool 02-05 04:55:33.424 0 0 I Removed memory: created DMA memory pool at 0x8d000000, size 5 MiB 02-05 04:55:33.424 0 0 I Reserved memory: initialized node pheripheral_region@0, compatible id removed-dma-pool 02-05 04:55:33.424 0 0 I Reserved memory: allocated memory for 'venus_qseecom_region@0' node: base 0x8f800000, size 8 MiB 02-05 04:55:33.424 0 0 I Reserved memory: created CMA memory pool at 0x8f800000, size 8 MiB 02-05 04:55:33.424 0 0 I Reserved memory: initialized node venus_qseecom_region@0, compatible id shared-dma-pool 02-05 04:55:33.424 0 0 I Reserved memory: allocated memory for 'audio_region@0' node: base 0xaf400000, size 4 MiB 02-05 04:55:33.424 0 0 I Reserved memory: created CMA memory pool at 0xaf400000, size 4 MiB Memory : 607972K/686080K available (9826K kernel code, 1030K rwdata, 4192K rodata, 770K init, 1361K bss, 78108K reserved) -
cat /proc/meminfo 中的MemTotal的内存为用户空间可用内存
SW: # cat /proc/meminfo MemTotal: 651012 kB MemFree: 7644 kB MemAvailable: 267460 kB Buffers: 21040 kB Cached: 242492 kB SwapCached: 3532 kB Active: 196976 kB Inactive: 221948 kB Active(anon): 65160 kB Inactive(anon): 91480 kB Active(file): 131816 kB Inactive(file): 130468 kB Unevictable: 256 kB Mlocked: 256 kB SwapTotal: 393212 kB SwapFree: 195948 kB Dirty: 20 kB Writeback: 0 kB AnonPages: 154864 kB Mapped: 55256 kB Shmem: 1248 kB Slab: 57920 kB SReclaimable: 15796 kB SUnreclaim: 42124 kB KernelStack: 11216 kB PageTables: 19916 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 718716 kB Committed_AS: 22133732 kB VmallocTotal: 245760 kB VmallocUsed: 77072 kB VmallocChunk: 84820 kB kernel dynamic:buffers + slab + page tables + kernel stack -
dumpsys meminfo 中可以看到安卓系统使用的内存情况(PSS),包含Native、Persistent、PersistentService、Visible、Perceptible、Foreground、Aservices、Bservices 、Cached等
SW # dumpsys meminfo Applications Memory Usage (in Kilobytes): Uptime: 19700365 Realtime: 19700365 Total PSS by process: 46,595K: com.tencent.mm (pid 21254 / activities) 31,179K: system (pid 2110) 16,764K: com.tencent.mm:tools (pid 27161) ...... Total PSS by OOM adjustment: 30,415K: Native 9,848K: surfaceflinger (pid 342) 5,169K: app_process (pid 5765) 4,905K: logd (pid 283) 869K: rild (pid 379) ...... 62,344K: Persistent 31,179K: system (pid 2110) ...... 5,321K: Persistent Service 5,321K: com.android.bluetooth (pid 3086) 24,458K: Visible 3,471K: com.qualcomm.qti.contextualmode (pid 25749) ..... 3,850K: Perceptible 3,850K: com.he.ardc (pid 5874) 12,254K: A Services 12,254K: com.tencent.mm:push (pid 25918) 46,595K: Previous 46,595K: com.tencent.mm (pid 21254 / activities) 6,108K: B Services 1,481K: com.qualcomm.qti.modemtestmode (pid 24885) 1,324K: com.qualcomm.qualcommsettings (pid 20650) ....... 49,932K: Cached 16,764K: com.tencent.mm:tools (pid 27161) 14,325K: com.tencent.mm:toolsmp (pid 28104) 12,846K: com.tencent.mm:appbrand1 (pid 27522) ...... Total PSS by category: 69,086K: Dalvik 34,205K: Native 22,500K: GL mtrack 17,762K: .art mmap 16,580K: Dalvik Other ..... Total RAM: 651,012K (status moderate) Free RAM: 264,568K ( 49,932K cached pss + 207,088K cached kernel + 7,548K free) Used RAM: 287,965K ( 191,345K used pss + 96,620K kernel) Lost RAM: 29,967K ZRAM: 68,512K physical used for 197,528K in swap ( 393,212K total swap) Tuning: 96 (large 256), oom 159,217K, restore limit 53,072K (high-end-gfx)
本文探讨了Android系统中如何查看内存信息,包括内核预分配的物理总内存(MemTotal)及其在开机过程中的角色,以及通过`/proc/meminfo`和`dumpsys meminfo`命令来了解用户空间的可用内存和系统各组件的内存使用状况。

7122

被折叠的 条评论
为什么被折叠?



