内存管理
文章平均质量分 94
痒痒挠963
这个作者很懒,什么都没留下…
展开
-
内存管理——页表
Linux内核页表管理-那些鲜为人知的秘密1.开场白 环境: 处理器架构:arm64 内核源码:linux-5.11 ubuntu版本:20.04.1 代码阅读工具:vim+ctags+cscope 通用操作系统,通常都会开启mmu来支持虚拟内存管理,而页表管理是在虚拟内存管理中尤为重要,本文主要以回答几个页表管理中关键性问题来解析Linux内核页表管理,看一看页表管理中那些鲜为人知的秘密。2.页表的作用是什么?1)地址转换将虚拟地址转换..转载 2021-10-18 17:20:24 · 11221 阅读 · 0 评论 -
内存管理——高端内存
作者:文松链接:https://www.zhihu.com/question/280526042/answer/1615449221来源:知乎一、高端内存的由来(为什么需要高端内存)在32位地址时代,最大可寻址0xFFFFFFFF,即4GB,因此虚拟地址空间有4GB,通常32位Linux内核地址空间划分0~3G为用户空间,3~4G为内核空间,即Linux内核虚拟地址空间只有1G。32位地址空间实际的计算机体系结构有硬件的限制,这约束了页框的使用方式,其中,Linux内核必须处理x.转载 2021-10-13 14:42:59 · 1636 阅读 · 0 评论 -
内存管理——初始化流程
arm linux中memblock与mem_map的初始化memblock和mem_map是linux内存管理中非常重要的两个全局变量。memblock保存着所有物理内存区域,包括可用的(memory)与保留的(reserved)。mem_map是全局page数组,物理内存每个页对应一个page结构体,顺序存储在mem_map中。1 memblock初始化可用的物理内存区域由bootloader通过dts传递给kernel,节点名称是“memory”。这个节点的内容可以由用户指定,也有可能是用转载 2021-10-13 14:26:15 · 1058 阅读 · 0 评论