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

2024年7月4日

内存管理-14-内核文档翻译-1-reserved-memory.txt

摘要: 本文翻译自:msm-5.4/arch/arm64/boot/dts/vendor/bindings/reserved-memory/reserved-memory.txt *** Reserved内存区域 *** 保留内存被指定为 /reserved-memory 节点下的一个节点。操作系统应将保留 阅读全文

posted @ 2024-07-04 18:22 Hello-World3 阅读(330) 评论(0) 推荐(0)

2024年7月3日

内存管理-7-memblock子系统-1-初探

摘要: 基于msm-5.4 一、memblock简介 现实的物理内存是被截的一段一段的了,并不是一马平川的。伙伴系统要进行初始化,就需要知道哪些区域是可用的,哪些区域已经被占用了、被保留了,剩余的才可以用于伙伴系统的初始化。因此需要一个早期的内存管理机制,即 memblock 机制. 全局变量: struc 阅读全文

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

2024年7月2日

内存管理-13-CMA内存-1-初探

摘要: 基于msm-5.4 关键词 cma_alloc/cma_release MIGRATE_ISOLATE MIGRATE_CMA 一、概述 1. CMA简介 CMA(Contiguous Memory Alloctor)主要用于分配大块连续的物理内存。伙伴系统能分配的最大连续物理内存块是2^10,即一 阅读全文

posted @ 2024-07-02 21:00 Hello-World3 阅读(871) 评论(0) 推荐(0)

内存管理-11-buddy伙伴子系统-2-Per-CPU页帧缓存

摘要: 基于msm-5.4 一、概述 1. 实现背景 buddy子系统管理的物理页面,绝大多数都是放在 zone::free_area[] 中的链表中,少部分放在 zone::lowmem_reserve[] 中。还有少量页面放在zone::__percpu pageset 这个每CPU变量中,每种迁移类型 阅读全文

posted @ 2024-07-02 14:43 Hello-World3 阅读(111) 评论(0) 推荐(0)

内存管理-11-buddy伙伴子系统-1-初探

摘要: 基于msm-5.4 一、伙伴系统概述 1. 简介 伙伴系统是物理内存的三大管理机制之一,另外两个是slab缓存和per-cpu页帧缓存。##### 管理物理内存实际上就是管理 page 结构,将page添加到不同链表上进行管理。当用户申请内存的时候,从链表上拿一个page返还给用户,然后用户根据pa 阅读全文

posted @ 2024-07-02 14:40 Hello-World3 阅读(185) 评论(0) 推荐(0)

2024年7月1日

内存管理-0-开篇

摘要: 一、什么是内存管理 1. 基础内存管理可以大致分为5块 (1) 物理内存管理 node、zone、page、buddy-system、slab (2) 虚拟内存管理 虚拟内存分用户空间和内核空间,用户空间又分为很多段(代码段、数据段、栈、堆、mmap映射区、动态共享库等等); 内核空间也是分为很多区 阅读全文

posted @ 2024-07-01 16:24 Hello-World3 阅读(57) 评论(0) 推荐(0)

2024年6月24日

Linux设备树(5)—实现

摘要: 一、DeviceTree简介 1. 将内核当做一个黑盒,那么其输入参数应该包括: (1) 识别platform的信息(2) runtime的配置参数(3) 设备的拓扑结构以及特性 对于嵌入式系统,在系统启动阶段,bootloader会加载内核并将控制权转交给内核,此外,还需要把上述的三个参数信息传递 阅读全文

posted @ 2024-06-24 18:39 Hello-World3 阅读(270) 评论(0) 推荐(0)

2024年6月19日

内存管理-6-虚拟内存相关结构体

摘要: 基于msm-5.4 一、struct mm_struct 1. 简介 内嵌在 task_struct 结构中,表示一个进程虚拟地址空间。 2. 成员介绍 //include/linux/mm_types.h struct mm_struct { struct { struct vm_area_str 阅读全文

posted @ 2024-06-19 16:15 Hello-World3 阅读(175) 评论(0) 推荐(0)

2024年6月18日

内存管理-5-物理内存管理-1-相关结构体

摘要: 基于msm-5.4 概述: 物理内存组织关系如下图。非服务器的设备,一般只有一个内存node节点,使用 pglst_data 结构描述;一个内存节点下有较多分区,使用 zone 结构描述;每个分区中有不同大小的空闲内存块,通过 free_area 结构进行描述;物理内存管理的最小单位使用 page 阅读全文

posted @ 2024-06-18 21:41 Hello-World3 阅读(169) 评论(0) 推荐(0)

调度器68—EEVDF调度器

摘要: 一、EEVDF调度器简介 EEVDF(Earliest Eligible Virtual Deadline First) 最早符合条件的虚拟截止日期优先。由Peter Zijlstra提交,最早合入到Linux6.6,在Linux6.10上完成功能,计划用于改进现有的CFS调度器。 EEVDF是一种 阅读全文

posted @ 2024-06-18 10:41 Hello-World3 阅读(922) 评论(0) 推荐(0)

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

导航