上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 70 下一页

2024年8月23日

调度器22—调频-interactive governor分析

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

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

2024年8月17日

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 阅读(133) 评论(0) 推荐(0)

2024年7月24日

内存管理-22-KASLR

摘要: 基于msm-5.4 一、简介 1. 什么是KASLR KASLR是 kernel address space layout randomization 的缩写,直译过来就是内核地址空间布局随机化。KASLR技术允许将kernel image映射到 vmalloc 区域的任何位置(待确认哦)。 2. 阅读全文

posted @ 2024-07-24 14:41 Hello-World3 阅读(467) 评论(0) 推荐(0)

2024年7月23日

内存管理-21-Arm64架构内存管理-1-初探

摘要: 基于ARMv8/ARMv9 一、内存管理单元 1. TLBI 指令使tlb无效 TLBI <type> <level>{IS} {, <Xt>} TLBI WAE1, X0 使与寄存器X0中指定的地址关联的条目无效 2. 每个异常级别,即EL3、EL2 或 EL1, 都有自己的虚拟地址空间。 3. 阅读全文

posted @ 2024-07-23 13:59 Hello-World3 阅读(345) 评论(0) 推荐(0)

2024年7月16日

bw_mem 和 lmbench

摘要: 一、bwmem 名称 bw_mem - 时间内存带宽 概要 bw_mem_cp [ -P <并行度> ] [ -W <热身次数> ] [ -N <重复次数> ] 大小 rd|wr|rdwr|cp|fwr|frd|bzero|bcopy [对齐] 描述 bw_mem 分配两倍指定内存量,将其归零,然后 阅读全文

posted @ 2024-07-16 20:22 Hello-World3 阅读(1847) 评论(0) 推荐(0)

2024年7月15日

内存管理-19-vmlinux.lds.S分析

摘要: 基于msm-5.4 一、简介 链接器主要任务是将符号引用解析到符号定义上,将多个目标文件(.o)和库文件合并成为一个可执行文件或者动态链接库,生成符号表,并对程序代码做最后的检查和优化。这个链接脚本在Linux内核里就是 vmlinux.lds.S 文件。 vmlinux.lds.S 编译后会在 o 阅读全文

posted @ 2024-07-15 20:45 Hello-World3 阅读(496) 评论(0) 推荐(0)

2024年7月12日

内存管理-18-sparsemem内存模型-初探

摘要: 一、简介 Linux中的物理内存被按页框划分,每个页框都会对应一个 struct page 结构体存放元数据,也就是说每块页框大小的内存都要花费 sizeof(struct page) 个字节进行管理。 因此系统会有大量的 struct page,在linux的历史上出现过三种内存模型去管理它们。依 阅读全文

posted @ 2024-07-12 22:47 Hello-World3 阅读(713) 评论(0) 推荐(0)

2024年7月10日

内存管理-17-Arm64汇编

摘要: 一、指令 1. lsr LSR是ARM架构的位移动指令,用于逻辑右移操作。它将第一个操作数的位向右移动指定位数,并根据需要将符号位(在有符号数操作中)扩展到空出来的位。 语法: LSR{条件}{S} 移位量,寄存器 条件是可选的,指定为如 EQ、NE 等,用来指明只有在特定条件下才能执行指令。S 是 阅读全文

posted @ 2024-07-10 09:21 Hello-World3 阅读(2604) 评论(0) 推荐(0)

2024年7月6日

内存管理-16-kmalloc机制实现-初探

摘要: 一、概述 slab的接口比较麻烦,kmalloc接口使用简便,其底层是基于slab缓存机制实现的,主要也是从slab缓存中拿内存对象。 //include/linux/slab.h static __always_inline void *kmalloc(size_t size, gfp_t fla 阅读全文

posted @ 2024-07-06 10:26 Hello-World3 阅读(134) 评论(0) 推荐(0)

内存管理-15-slab、slob和slub分配器-初探

摘要: 一、slab简介 1. 简介 首先,“slab”已成为一个通用名称,指的是使用对象缓存的内存分配策略,可实现内核对象的高效分配和释放。它最初由 Sun 工程师 Jeff Bonwick 记录下来,并在 Solaris 2.4 内核中实现。 Linux 目前为其“slab”分配器提供了三种选择: Sl 阅读全文

posted @ 2024-07-06 10:20 Hello-World3 阅读(1356) 评论(0) 推荐(0)

上一页 1 ··· 5 6 7 8 9 10 11 12 13 ··· 70 下一页

导航