《深入理解计算机系统》Vitual memory concepts

使用虚拟内存,使用mmu的原因:

1. 更有效地使用内存,当作磁盘的缓存。由于局部性,将最近访问过的磁盘空间,缓存到内存中;

2. 更简单地管理每个进程的内存空间:每个进程具有相似的虚拟内存空间;

3. 可以实现对内存访问的保护,隔离每个进程的内存使用,避免一个进程踩到其他进程的内存。

术语:PTE  page table entry  页表项  页表条目

page table 为 page table entry 的数组

page hit的情况:

这种情况也是需要访问内存,原因时需要访问page table, 获取pte

page fault的情况:

translation lookaside buffer  TLB:

TLB是一个小的,虚拟寻址的缓存,其中每一行都是单个pte。

存在的意义是缩短MMU获取pte的时间(如果没有tlb,需要到cache或内存中获取pte)

多级页表的优势:

节省页表占用空间,由于大部分的虚拟内存都是没有被分配的,因此多级页表可以省下大部分空间,如下图,使用了1+3,一共4个page table ,就覆盖了全部的虚拟内存空间:

节省空间的关键点,在于,没用到的页,只需要在level1中存储,在后面的level中不占用空间。

多级页表的管理方式(VPN=virtual page number):

缩写含义:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值