导航

存储器管理——具有快表的地址变换机构

局部性原理:时间局部性、空间局部性
时间局部性:被访问过的数据不久后很可能再次被问。(因为程序中存在大量的循环)
空间局部性:被访问的存储单元附近的存储单元,不久后很可能被访问。(连续存放)

快表(联想寄存器TLB):用来存放当前访问的若干页表项,以加速地址变换的过程。是一种访问速度比内存快很多的高速缓冲存储器。

与快表对应的内存中的页表常称为:慢表

快表匹配前需要:CPU给出逻辑地址,得出页号、页内偏移量,将页号与快表匹配

快表匹配成功后:直接取出对应的内存块号,再将内存块号与页内偏移量拼接形成物理地址,最后,访问该物理地址对应的内存单元。

若快表命中,访问某个逻辑地址仅需访存几次:一次

快表匹配失败后:需要访问内存中的页表,找到对应页表项,得到页面存放的内存块号,再将内存块号与页内偏移量拼接形成物理地址,最后,访问该物理地址对应的内存单元。

快表未命中,访问某个逻辑地址需要访存几次:两次

快表中副本的由来:在找到页表项后,应同时将其存入快表,以便后面可能的再次访问。但若快表己满,则必须按照一定的算法对旧的页表项进行替换

因为局部性原理,快表的命中率可以达到:90%以上

具有快表的地址变换及机构的地址变换过程:
1.算页号、页内偏移量
2.检查页号合法性
3.查快表。若命中,即可知道页面存放的内存块号,可直接进行5;若未命中则进行4
4.查页表,找到页面存放的内存块号,并且将页表项复制到快表中
5.根据内存块号与页内偏移量得到物理地址
6.访问目标内存单元






posted on 2022-05-24 06:13  理想主义者的长征路  阅读(346)  评论(0编辑  收藏  举报