开机RAM分析调试SOP

news/2025/9/22 23:04:58/文章来源:https://www.cnblogs.com/chg-blog/p/19106295
  • 思维导图
  • 数据来源
  • 内存分解对比项
    • 一、硬件保留内存
    • 二、MemFree剩余物理内存
    • 三、MemAvailable剩余可用内存
      • Kernel占用内存
      • 用户空间占用内存

 

思维导图

image

 

数据来源

  • /proc/meminfo          内存状态信息
  • dumpsys meminfo    内存分解

内存分解对比项

一、硬件保留内存

保留内存 = 实际物理内存大小 - MemTotal

这块内存大小和驱动功能有关,需要BSP去排查每项功能内存分配,是否有裁剪的空间

MTK平台的保留内存拆机方法:reserved memory

二、MemFree剩余物理内存

影响因素:

  1. 进程的数量:对比当前进程数量是否相差较多,是否有不需要存在的进程
  2. kswapd内存回收水位:内存回收的激进程度是否一致,是否因水位过高,从而导致回收了更多的内存。通过/proc/zoninfo中每个内存扇区的min/low/high来确认
  3. dalvik的heap配置不一样,导致每个进程的内存存在差异,需要确认此配置的影响

三、MemAvailable剩余可用内存

可用内存大小和kernel内存占用,用户空间内存占用这两块有关,同时为了准确排查,需要去除zram的影响,最好能在关闭zram的情况下进行对比。

Kernel占用内存

kernel占用内存情况通过/proc/meminfo信息来获取,

kernel占用内存 = Shmem + SUnreclaim + KernelStack + PageTables + VmallocUsed

 

Shmem包括:

  • shared memory
  • SysV shared memory [shmget etc.]
  • POSIX shared memory [shm_open etc.]
  • shared anonymous mmap [ mmap(…MAP_ANONYMOUS|MAP_SHARED…)]
  • tmpfs和devtmpfs

Sunreclaim:

查看/proc/slabinfo信息,查看分配内存较大的模块,差异较大的由对应模块分析。

KernelStack:

内核线程栈占用的空间。

每一个用户线程都会分配一个kernel stack(内核栈),内核栈虽然属于线程,但用户态的代码不能访问,只有通过系统调用(syscall)、自陷(trap)或异常(exception)进入内核态的时候才会用到,也就是说内核栈是给kernel code使用的。

Kernel stack(内核栈)是常驻内存的,既不包括在LRU lists里,也不包括在进程的RSS/PSS内存里。所以属于kernel消耗的内存。

PageTables:

进程页表所占用的内存。

用于将内存的虚拟地址翻译成物理地址。随着内存地址分配的越来越多,page table 会增大。和进程数量有关。

VmallocUsed:

查看/proc/vmallocinfo信息,查看每个功能模块使用的大小,差异较大的由对应模块分析。

用户空间占用内存

通过dumpsys meminfo获取"Total PSS by OOM adjustment"下每个进程占用的内存大小,对比内存大小超过5M的每个进程。

同时参照《内存参数建议标准》,

  • 如果进程数量差异较大,确认lmkd的查杀程度,以及AMS的CUR_MAX_CACHED_PROCESSES配置是否一致
  • 如果相同进程的内存差异较大,确认dalvik的heap参数是否一致

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/910686.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

9.20 模拟赛 T4

题意:有 \(n\) 个点,每个点有四个属性 \(a_i,b_i,c_i,v_i\)。现在要在这 \(n\) 个点之间连无向边。要求:\(i\) 的度数至少为 \(a_i\)。 \(i\) 的所有邻居 \(j\) 的 \(v_j\),要么都小于等于 \(v_i\),要么都大于等于…

建设网站的题目无实体店营业执照申请

网站优化搜索引擎与关键词 人们不应该高估搜索引擎的智商。这不利于seo的研究,事实上,搜索引擎是非常愚蠢的,让我们举一个非常简单的例子,你在搜索引擎中输入“教师”这个词,搜索引擎就会给出一个准确的搜索列表。我们…

厦门网站改版网络营销的成功案例

目标 知道GoogLeNet网络结构的特点能够利用GoogLeNet完成图像分类 一、开发背景 GoogLeNet在2014年由Google团队提出, 斩获当年ImageNet(ILSVRC14)竞赛中Classification Task (分类任务) 第一名,VGG获得了第二名,为了向“LeNet”致敬&#x…

怎么建设网站做一家网站

文章目录 一、机器学习是什么?二、模型训练YouTube流量预测1. 先写一个具有未知参数的函数(Function)2. 定义损失(从训练数据进行计算)3.最优化4.结果分析 Back to framework1.带有未知数的函数:2.定义损失…

网页转向网站wordpress交易系统

之前写了个1.0版本,由于太局限,需要用到笔记本才能操作,很多车友反馈不方便。特此出个手机版教程,简单easy,妈妈再也不用担心我搞不定啦 一、准备工作 先卸载车机上的autokit 或者 智能互联 app,这步很关…

珠海自适应网站建设陕西省交通建设集团商界分公司网站

一、什么是playbook及playbook的组成 1.Playbook的功能 playbook 是由一个或多个play组成的列表 Playboot 文件使用YAML来写的 play就是一个个模块用列表的方式体现出来 playbook的语法是用YAML的预防进行书写的 2.YAML 简介 是一种表达资料序列的格式,类似XM…

国内网站设计欣赏缪斯设计官网

因为机缘巧合,我接手了一个项目,阴差阳错的,我竟然又成了这个项目的半个负责人。而这个项目呢,由我们团队和别的团队一起合作,这就遇到一个问题了,我们的核心技术在上传到项目中的时候就会暴露给别的团队了…

合肥专业建站网站建设跟网站开发有什么区别吗

前言:在shell脚本编程中,我们经常会用到切割字符串,类似于python中的split。但shell中的命令比较五花八门,小编也是苦扰了很久,终于下定决心对它做一个总结。方法一:字符串替换法#/bin/bashstring"Hel…

学网页设计有什么网站视频素材网站大全免费

文章目录 英语口语中 "though" 的用法详解1. "Though" 作为转折连词的用法1.1 基本用法示例句子: 1.2 位置灵活性示例句子: 2. "Though" 作为副词的用法2.1 表示对比或转折示例句子: 2.2 强调前述观点示例句子…

2025.9.21 测试 (a1a2a3a4a5)

2025.9.21 测试 (a1a2a3a4a5)这套题比较简单 ? 1. P10528 [XJTUPC 2024] 崩坏:星穹铁道 这题就是矩乘板子 码 2. P3667 [USACO17OPEN] Bovine Genomics G 原题应该是想让二分长度后 ,哈希判断的 但数据范围小了(…

Русский язык

Единственный цвет в русском языке, который имеет положительное значение - красный. красная площадь, RED Square, also i…

沈阳定制网站驻马店市做网站

1.1 目的 部署MysqlCluster集群环境 1.2 MySQL集群Cluster原理 1 数据分片 MySQL集群Cluster将数据分成多个片段,每个片段存储在不同的服务器上。这样可以将数据负载分散到多个服务器上,提高系统的性能和可扩展性。 2. 数据同步 MySQL集群Cluster使…

xps13适合网站开发吗自己制作一个网站的软件

观察某宝商品数据,有一个东西叫服务器>>>>js的作用重要作用之一>>>>交互>>>>人机交互(事件)>>>>服务器交互(ajax);服务器交互,数据处理方式json>>>>>要把它转化成字符串操作。字符串操作…

越影网站建设如何做一个自己的网页

在 Kubernetes 中,当您创建 NodePort 类型的服务时,流量不会直接从主机的 IP 和端口转发到特定 Pod 的 IP 和端口。相反,流量被转发到集群中的一个节点,然后从那里转发到相应的 Pod。 1、当您创建 NodePort 类型的服务时&#xf…

华为云网站备案流程网络建设费是什么

参考一首先到:http://www.fckeditor.net去下载FCKeditor放到网站根目录。精简说明:删除所有"_"开头的文件和文件夹删除语言包中除中文和英文以外的语言删除skin目录下除默认皮肤以外的文件夹filemanager/browser/default/connectors/目录下除php以外的文件…

沈阳网站的优化商务网页设计与制作 百度百科

虚拟银行账户是一种不同于传统银行账户的银行服务形式。又称银行云账户,主要是一个结算账户,可以作为企业开立多个不同名称子账户的主账户。 这些子账户可以用于各种用途,包括企业核算、佣金支付等。,同时保证转账和报送的同音性…

站外调用WordPress评论青岛的互联网企业

从博士师兄那里知道就在天津高新区有这个会议,就跟着师兄报名了,下面是参会第一天的感想。 背景WASA是人工智能领域的国际性大型会议,也是中国计算机学会(CCF)推荐的会议。旨在为人工智能研究者、开发者和企业提供一个…

菏泽市建设局网站上海企业网站建设哪家好

世事洞明皆学问,人情练达即文章。 有许多要学的东西多去学习,少一些紧张,多多的学习辩证法去应用到生活和学习中。

付费阅读小说网站开发建设源码个人网站制作模板主页

在面对小脑萎缩这一挑战时,正确的饮食习惯能够为患者带来巨大的改变。今天,让我们一起探索如何通过饮食的力量,帮助小脑萎缩患者改善生活质量,让每一天都充满希望和活力! 小脑萎缩患者的饮食应以均衡为原则&#xff0…

基于Hex Editor Neo的二进制文件模板

之前用010Editor做过一个二进制配方文件的模板,感觉挺好用。后来发现Hex Editor Neo(以下简写为HEN)也有二进制的模板功能,但玩法与010Editor有点不太一样,于是研究了一下。 010Editor用的是BT后缀的文件,其实也就是…