地址翻译:从虚拟地址到物理地址

1.名词释义

----------------------------------

VA:虚拟地址

PA:物理地址

VM:虚拟存储器

MMU:存储管理单元

VP:虚拟页 VM被组织为存放在磁盘上的N个连续的字节大小的单元组成的数组。每个字节都有唯一的虚拟地址。磁盘上数组的内容被缓存到主存中,磁盘上的数据被分割为块,即虚拟页VP,作为磁盘和主存之间的传输单元。类似的,物理存储器被分割为物理页PP。

PP:物理页

SRAM缓存:用来表示CPU和主存储器之间的L1 L2 L3高速缓存

DRAM缓存:用来表示虚拟存储器系统的缓存,它在主存中缓存虚拟页

PT:页表 将虚拟页映射到物理页

PTE:页表条目

---------------------------------

N:虚拟地址空间中的地址数量(2^n)

M:物理地址空间中的地址数量(2^m)

P:页的大小(2^p)n

VPO:虚拟页面偏移量

VPN:虚拟页号

PPO:物理地址偏移量

PPN:物理页号

PTBR:页表基址寄存器

-------------------------------------------------------

2.地址翻译过程

              n-1----VPN------p p-1-------VPO--------0

                      

 PTBR -->      有效位----------PPN--------------------------

                        有效位----------PPN--------------------------

                        有效位----------PPN--------------------------


                                      m-1----PPN------p p-1-------PPO--------0

-------正常情况-------------------

1.处理器生成一个虚拟地址,并把它传送给MMU

2.MMU生成PTE地址,并从高速缓存/主存请求得到它

3.高速缓存/主存向MMU返回PTE(页表是存储在物理存储器中的)

4.MMU构造物理地址,并把它传送给高速贮存/缓存

5.高速缓存/主存返回所请求的数据字给处理器

---------------异常情况-------------------

1-3与上相同

4.PTE中有效位0,MMU触发一次异常,传递CPU中控制操作到操作系统内核的缺页异常处理程序

5.缺页处理程序确定出物理存储器中的牺牲页(我们将把请求的页从磁盘拷贝到物理存储器此处,因此如果该牺牲页已经被修改,即与它从磁盘来之前不同,你还应把它换出到磁盘)

6.缺页处理程序调入新的页面,并更新存储器中的PTE。(将之前的PTE条目有效位置1,并记录物理页号PPN)

7.返回到原来进程,重新执行。




  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值