前言
我们从前面的cache 高数缓存中知道了, CPU 的访问 cache 部分的过程 (也就是下图的青色部分的过程) , 这个章节我们将会学习访问快表和缺页部分的处理 .
下面这个分页
的过程是逻辑地址到物理地址的过程. 再访问页表之前会先访问快表 . 可以看到我们首先利用逻辑地址找到对应的页表项号 ,然后拿到对应的页表项后再找到对应的物理页框号
页表长什么样
逻辑地址转物理地址的过程
逻辑地址向物理地址转化的过程如下 :
简单来说就是去页表找到对应的页表项 .
TLB 的工作过程
我们前面知道了 cache 是内存的缓存 , 而TLB 则是作为页表的缓存 ,我们来看一下它的工作过程
可以看到 TLB 也采取了和 cache 一样的做法 ,有全相连和组相连 , 查找的过程和物理地址在cache找是否存在数据很相似 , 假如是组相连 ,虚页号高位为Tag,低位为index,用作组索引。
虚拟地址和物理地址的各字段含义
参考
- <袁春风-操作系统>