如何打印Android内存映射?

How to print Android memory map?

我对 Android 内存映射有疑问。 我想查看进程的内存映射,然后在 adb shell

中找到这样的解决方案
cat /proc/[pid]/maps

但由于 "Permission Denied" 的错误,它没有显示任何内容 (我的 phone 没有 root phone..)

我做错了什么吗?这个问题有另一个解决方案(另一个命令..)吗?

我想查看进程的内存映射.. !

com.android.browser 中的内存区域 a) 地址范围:- (1) 未命名区域可以是任何东西。例如,dlmalloc 实现将使用 mmap() 分配大区域(其中 "large" 是可配置的;可能是 64K 或 256K)。 b) 有多个 [stack:xxxx] 区域,它们是线程本地堆栈吗?如果不是,它们是什么? (2) [stack:xxxx] 栈是指定线程的线程栈;每个都是 1MB,带有保护页面以捕获 over/underruns。它们不会都是顺序的,因为并非所有线程都同时启动。 c) 如何查看内核的内存映射space? (3)内核从0xc0000000开始。 ASLR 使事物的放置有些随机。有多种工具可以用来查看 Linux 内核。 android 中查看内存映射的命令:-

 root@android:/ # cat /proc/2348/maps

/proc/<pid>/statm
/proc/<pid>/maps
/proc/<pid>/smaps

'top' 命令将显示 VSS 和 RSS。 Vss = 虚拟集大小 Rss = 常驻集大小 欲了解更多详情,您可以进一步访问 http://elinux.org/Android_Memory_Usage