08 2024 档案

内存管理-31-系统内存统计-4-/proc/vmstat
摘要:基于msm-5.4 一、打印内容 1. 打印格式 # cat /proc/vmstat /* 1. 打印全局数组 vm_zone_stat[] 的值,enum zone_stat_item 描述各条目 */ nr_free_pages 617775 nr_zone_inactive_anon 165 阅读全文

posted @ 2024-08-31 11:43 Hello-World3 阅读(54) 评论(0) 推荐(0) 编辑

内存管理-31-系统内存统计-3-/proc/zoneinfo
摘要:基于msm-5.4 一、概述 /proc/zoneinfo 节点包含当前系统所有内存管理区的信息。 1. 打印内容 # cat /proc/zoneinfo Node 0, zone Normal //Normal内存区 /* 第(1)部分,打印的是全局变量 vm_node_stat[i] 的值 * 阅读全文

posted @ 2024-08-27 21:32 Hello-World3 阅读(148) 评论(0) 推荐(0) 编辑

内存管理-31-系统内存统计-2-/proc/buddyinfo 和 /proc/pagetypeinfo
摘要:基于 msm-5.4 一、概述 1. 简介 /proc/buddyinfo 节点包含当前伙伴系统的简要信息,而 /proc/pagetypeinfo 则包含了当前伙伴系统详细信息,包括每个迁移类型和每个链表的成员数量等。 迁移类型最小的单位是页块,在Arm64架构中,页块的默认大小是4M. 但需注意 阅读全文

posted @ 2024-08-27 21:29 Hello-World3 阅读(103) 评论(0) 推荐(0) 编辑

内存管理-31-内存统计-1-初探
摘要:基于msm-5.4 一、概述 Linux内核为了帮助大家从宏观上把握系统内存的使用情况,在几大核心数据结构上都有相应的统计计数,如物理页面使用情况、伙伴系统分配情况、内存管理区的物理页面使用情况等。 1. vm_stat 计数值 内存管理模块定义了三个全局的 vm_stat 计数值 //includ 阅读全文

posted @ 2024-08-27 21:15 Hello-World3 阅读(30) 评论(0) 推荐(0) 编辑

内存管理-31-每进程内存统计-4-/proc/pid/smaps
摘要:基于msm-5.4 一、初探 1. 打印格式 # cat /proc/593/smaps ... 7e5a528000-7e5a626000 r--p 00000000 00:1f 5 /dev/binderfs/hwbinder Size: 1016 kB KernelPageSize: 4 kB 阅读全文

posted @ 2024-08-26 21:57 Hello-World3 阅读(36) 评论(0) 推荐(0) 编辑

内存管理-31-每进程内存统计-3-/proc/pid/maps‌
摘要:基于msm-5.4 一、初探 此文件描述了进程使用的每个内存段的信息,但是并不是所有的段,也不是一个段的所有部分都加载到内存中了,除非使用了对应的页面。 1. 打印格式 # cat /proc/593/maps 5e0cb16000-5e0cc1a000 r--p 00000000 fc:03 10 阅读全文

posted @ 2024-08-26 21:55 Hello-World3 阅读(6) 评论(0) 推荐(0) 编辑

内存管理-31-每进程内存统计-2-/proc/pid/statm
摘要:基于msm-5.4 一、初探 1. 打印格式 # cat /proc/593/statm //非内核线程 2826695 22403 17848 1420 0 12717 0 //以 PAGE_SIZE 为单位 # cat /proc/187/statm //内核线程 0 0 0 0 0 0 0 打 阅读全文

posted @ 2024-08-26 21:53 Hello-World3 阅读(18) 评论(0) 推荐(0) 编辑

内存管理-30-系统内存占用
摘要:基于msm-5.4 一、前言 1. 相关名词介绍 RSS(Resident Set Size)‌:这是进程当前在物理内存中占用的空间,包括进程本身和所有链接库。RSS是评估进程内存占用的一个重要指标,它直接反映了进程当前实际使用的物理内存量‌。但由于包含了共享库,用处不大。 ‌PSS(Proport 阅读全文

posted @ 2024-08-26 21:45 Hello-World3 阅读(17) 评论(0) 推荐(0) 编辑

调度器22—调频-interactive governor分析
摘要:基于msm-4.4 一、概述 Interactive Governor‌实现调频的核心思想是通过选择最小的频率来满足目标负载。这个过程涉及两个主要因素:系统频率的平均频率 loadadjfreq 和系统设定好的目标负载 target load。Interactive Governor 通过 choo 阅读全文

posted @ 2024-08-23 17:39 Hello-World3 阅读(37) 评论(0) 推荐(0) 编辑

Linux内核状态 system_state
摘要:基于msm-5.4 一、定义 /* 用于 system_state 的值,状态的顺序不得更改,代码检查时会用 <、<=、>、>= STATE */ extern enum system_states { //include/linux/kernel.h SYSTEM_BOOTING, //0, 最初 阅读全文

posted @ 2024-08-17 14:52 Hello-World3 阅读(38) 评论(0) 推荐(0) 编辑

内存管理-25-内存初始化
摘要:基于msm-5.4 一、C代码部分 1. 调用路径 _head //head.S stext //head.S __primary_switch //head.S __primary_switched //head.S kaslr_early_init //kaslr.c 最先调用,可配置会否生效与 阅读全文

posted @ 2024-08-03 10:30 Hello-World3 阅读(24) 评论(0) 推荐(0) 编辑

导航