通过cat /proc/$PID/smaps可以查看进程内存的详细映射情况。详细解析可以参考kernel的文档/Documentation/filesystems/proc.txt

如果我们的Android设备是USER版本,一般情况下我们没有权限查看各个APP进程的smaps文件。

其实Android的dumpsys meminfo命令显示的大部分内容,就是从对应进程的smaps文件中统计出来的。

流程从ActivityManagerServcie的dumpApplicationMemoryUsage()开始,经过jni读取smaps文件并统计。

meminfo各项内存数据的分类,主要与内存映射的类型对应。

下面列举meminfo各项数据与smaps的对应关系:

[笔记] dumpsys meminfo数据与smaps文件对应关系的更多相关文章

  1. Python学习笔记之将数据写入到文件中

    10-3 访客:编写一个程序,提示用户输入其名字:用户作出响应后,将其名字写入到文件guest.txt 中. 编写Python代码: username = input("Please ent ...

  2. Android笔记——Android中数据的存储方式(二)

    我们在实际开发中,有的时候需要储存或者备份比较复杂的数据.这些数据的特点是,内容多.结构大,比如短信备份等.我们知道SharedPreferences和Files(文本文件)储存这种数据会非常的没有效 ...

  3. Lua学习笔记4. coroutine协同程序和文件I/O、错误处理

    Lua学习笔记4. coroutine协同程序和文件I/O.错误处理 coroutine Lua 的协同程序coroutine和线程比较类似,有独立的堆栈.局部变量.独立的指针指令,同时又能共享全局变 ...

  4. Java开发笔记(八十八)文件字节I/O流

    前面介绍了如何使用字符流读写文件,并指出字符流工具的处理局限,进而给出随机文件工具加以改进.随机文件工具除了支持访问文件内部的任意位置,更关键的一点是通过字节数组读写文件数据,采取字节方式比起字符方式 ...

  5. Android使用procrank和dumpsys meminfo 、top分析内存占用情况

    如果你想查看所有进程的内存使用情况,可以使用命令procrank.dumpsys meminfo查看,当然也只可以过滤出某个进程如:dumpsys meminfo | grep -i phone 先来 ...

  6. NodeJS学习笔记 (15)二进制数据-buffer(ok)

    模块概览 Buffer是node的核心模块,开发者可以利用它来处理二进制数据,比如文件流的读写.网络请求数据的处理等. Buffer的API非常多,本文仅挑选 比较常用/容易理解 的API进行讲解,包 ...

  7. Java NIO 学习笔记(五)----路径、文件和管道 Path/Files/Pipe

    目录: Java NIO 学习笔记(一)----概述,Channel/Buffer Java NIO 学习笔记(二)----聚集和分散,通道到通道 Java NIO 学习笔记(三)----Select ...

  8. 【学习笔记】大数据技术原理与应用(MOOC视频、厦门大学林子雨)

    1 大数据概述 大数据特性:4v volume velocity variety value 即大量化.快速化.多样化.价值密度低 数据量大:大数据摩尔定律 快速化:从数据的生成到消耗,时间窗口小,可 ...

  9. 《Linux就该这么学》培训笔记_ch11_使用Vsftpd服务传输文件

    <Linux就该这么学>培训笔记_ch11_使用Vsftpd服务传输文件 文章最后会post上书本的笔记照片. 文章主要内容: 文件传输协议 Vsftpd服务程序 匿名访问模式 本地用户模 ...

随机推荐

  1. D. 停不下来的团长奥尔加 动态规划

    题目描述 分析 设\(f[i]\) 为从 \(i\) 走到 \(i+1\) 的步数 初始值 \(f[i]=2\) 则 \(f[i]=\sum_{i=p[i]}^{i}f[i]\) 考试的时候用树状数组 ...

  2. golang1.16内嵌静态资源指南

    今天是万圣节,也是golang1.16新特性冻结的日子.不得不说自从go2路线发布之后golang新特性的迭代速度也飞速提升,1.16中有相当多的重要更新,包括io标准库的重构,语言内置的静态资源嵌入 ...

  3. 模块导入from collections import Iterator,Iterable失败

    1.引入模块报错 from collections import Iterator,Iterable 报错: DeprecationWarning: Using or importing the AB ...

  4. 【Kata Daily 190917】Numericals of a String(字符出现的次数)

    题目: You are given an input string. For each symbol in the string if it's the first character occuren ...

  5. Dorado download注意事项

    uploader/uploader-SNAPSHOT uploader/uploader-RELEASE .....使用需要注意!

  6. 中科图新成为Bentley产品培训合作伙伴!质量服务双升级

    中科图新从2016年起开办ContextCapture产品培训,目前已累计培训了500多家企事业单位,涉及传统测绘单位.无人机航测.规划设计.建筑工程.水利.电力.交通.文保等十多个行业.实力过硬,口 ...

  7. 利用 Github Actions 的 service container 进行集成测试

    Github Action 中 Service Container 的使用 Intro 之前写过一个 StackExchange.Redis 的一个扩展,测试项目依赖 redis,所以之前测试一直只是 ...

  8. JavaScript一元运算符、二元运算符和三元运算符

    在JavaScript中,运算符可以根据其实际操作数的个数进行分类. JavaScript中的大多数运算符是一个二元运算符(binary operator),将两个表达式合并成为一个稍复杂的表达式.譬 ...

  9. Go知识点记录

    1.go中 堆的实现:https://ieevee.com/tech/2018/01/29/go-heap.html#3-containerheap%E5%8F%AF%E4%BB%A5%E7%94%A ...

  10. 适合 Go 新手学习的开源项目——在 GitHub 学编程

    作者:HelloGitHub-小鱼干&卤蛋 故事要从 2007 年说起.因为受够了 C++ 煎熬的 Google 首席软件工程师 Rob Pike 召集 Robert Griesemer 和 ...