操作系统-分页管理存储的实现

前言

我们从前面的cache 高数缓存中知道了, CPU 的访问 cache 部分的过程 (也就是下图的青色部分的过程) , 这个章节我们将会学习访问快表和缺页部分的处理 .
1297993-20220411231735273-250349725.png

下面这个分页的过程是逻辑地址到物理地址的过程. 再访问页表之前会先访问快表 . 可以看到我们首先利用逻辑地址找到对应的页表项号 ,然后拿到对应的页表项后再找到对应的物理页框号

img

页表长什么样

img

img

逻辑地址转物理地址的过程

逻辑地址向物理地址转化的过程如下 :
简单来说就是去页表找到对应的页表项 .

img

TLB 的工作过程

我们前面知道了 cache 是内存的缓存 , 而TLB 则是作为页表的缓存 ,我们来看一下它的工作过程

img

img

可以看到 TLB 也采取了和 cache 一样的做法 ,有全相连和组相连 , 查找的过程和物理地址在cache找是否存在数据很相似 , 假如是组相连 ,虚页号高位为Tag,低位为index,用作组索引。

img

虚拟地址和物理地址的各字段含义

img

参考

  • <袁春风-操作系统>
posted @ 2022-12-31 10:22  float123  阅读(67)  评论(0编辑  收藏  举报