页命中、缺页
(1)页命中
• a) 处理器要对虚拟地址VA进行访问。
• b) MMU的TLB没有命中,通过TWU遍历主存页表中的PTEA(PTE地址)。
• c) 主存向MMU返回PTE。
• d) MMU通过PTE映射物理地址,并把它传给高速缓存或主存。
• e) 高速缓存或主存返回物理地址对应的数据给处理器。
(2)缺页
• a) 处理器要对虚拟地址VA进行访问。
• b) MMU的TLB没有命中,通过TWU遍历主存页表中的PTEA(PTE地址)。
• c) 主存向MMU返回PTE。
• d) PTE中有效位是0,MMU触发一次异常,CPU相应缺页异常,运行相应的处理程序。
• e) 缺页异常处理程序选出物理内存中的牺牲页,若这个页面已经被修改,将其换出到EMMC。
• f) 缺页异常处理程序从EMMC中加载新的页面,并更新内存中页表的PTE。
• g)缺页异常处理程序返回到原来的进程,再次执行导致缺页的指令。CPU将引起缺页异常的虚拟地址重新发给MMU。由于虚拟页面现在缓存在主存中,主存会将所请求的地址对应的内容返回给cache和处理器。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
处理器
+关注
关注
68文章
18288浏览量
222167 -
内存
+关注
关注
8文章
2767浏览量
72771 -
MMU
+关注
关注
0文章
91浏览量
17944
发布评论请先 登录
相关推荐
关于页表和MMU的问题
刚开始学,好多东西都云里雾里的TT为什么在bootloader里要进行页表初始化然后开启MMU,然后在进入内核后还要创建页表开启MMU?这两个有什么不一样么?s3c2410,bootl
发表于 05-06 17:25
嵌入式中ARM的MMU和Cache机制
)集成了MMU是其最大的卖点;有了MMU,高级的操作系统(虚拟地址空间,平面地址,进程保护等)才得以实现。二者都挺复杂,并且在920T中又高度耦合,相互配合操作,所以需要结合起来研究。同时,二者的操作
发表于 08-19 22:42
ARM MMU 理解(基于ARM 920T)
、4KB和1KB大小地址空间的映射。要实现从虚拟地址到物理地址的映射,必然会遇到一个问题,如何找到这个页表。对于表的查找,要知道这个表的基地址和偏移地址,在具有MMU功能的处理器中,集成了一个被称为CP15
发表于 08-29 11:10
MMU的产生及MMU工作过程详解
的设置MMU,可以把16个虚页隐射到8个页框中的任何一个,但是这个方法并没有有效的解决虚拟地址空间比物理地址空间大的问题。从上图中我们可以看到,我们只有8个页框(物理地址),但我们有1
发表于 07-03 08:19
裸机加强版MMU章节页表创建,地址映射相同
ARM裸机1期加强版 024_mmu_cache_021\002_mmu_021_004\mmu.c 文件/* 2.3 for 64M sdram */创建页表 SDRAM 64M 虚
发表于 04-18 07:45
为什么我把MMU裸机程序修改成两级页表后程序编译时提示找不到‘memset’函数?
在看完MMU例程之后,我在原来程序的基础上把一级页表改成了两级页表,用一个粗页和一个小页将0x30000000~0x33FFFFFF映射到了
发表于 08-07 22:20
ARM的内存管理(MMU)是如何实现的?
( translate table )是实现 MMU 功能不可缺少的一步。页表是位于系统的内存中,页表的每一项对应于一个虚拟地址到物理地址的映射。每一项的长度即是一个字的长度(在 AR
发表于 10-23 15:29
详解ARMv8-A系列CPU的MMU隐射查找过程
状态,MMU页表的选取又能分为几种方式。本文首先分析异常级别、执行状态、MMU页表选取三者之间的关系,以及不同执行状态下MMU
发表于 08-09 17:18
ARM v7-A系列CPU的MMU隐射分析
详细介绍地址转换中用到短描述符格式(32位)和长描述符格式(64位),以及如何实现虚拟地址到物理地址的查询,最后就二级隐射问题,给出一个例子用以验证。 ARM v7-A MMU 整体结构介绍 整体
发表于 08-30 15:43
如何配置MMU page table walk的访问属性
众所周知,MMU的页表是由软件建立在外部内存中的。实际上有两条硬件路径需要访问这个页表:1 MMU硬件进行page table walk时,
发表于 10-24 15:45
《RISC-V体系结构编程与实践》+试读经验
查询是一个较耗时的过程,理想的状态下,TLB里应存放页表的相关信息。当TLB未命中时,MMU才会查询页表,从而得到翻译后的物理地址,而页表通
发表于 04-17 00:43
缺页异常是匿名映射缺页异常分析
前面讲到过写时复制缺页异常(COW),一般用于父子进程之间共享页,而我们会常见一种缺页异常是匿名映射缺页异常,今天我们就来讨论下这种缺页异常,让大家彻底理解它。注:本文使用linux-
嵌入式Linux运行一定需要MMU吗?为什么需要MMU?
嵌入式Linux运行一定需要MMU吗?为什么需要MMU? 嵌入式Linux运行需要MMU,这是因为MMU是嵌入式系统中最重要的子系统之一,它扮演着以硬件的方式隔离不同应用程序,为操作
MMU原理:CPU是如何访问到内存的?
当CPU访问虚拟地址0的时候,MMU会去查上面页表的第0行,发现第0行没有命中,于是无论以何种形式(R读,W写,X执行)访问,MMU都会给CPU发出page fault,CPU自动跳到fault的代码去处理fault。
发表于 11-09 12:30
•349次阅读
评论