【无标题】

操作系统-内存管理-虚拟内存

1.为什么要有虚拟内存
如果没有虚拟内存就会导致CPU直接操作物理内存,这样是不可能实现在内存中同时运行多个程序

2.CPU怎访问物理地址
通过内存管理单元(MMU)的映射关系将虚拟内存地址转换成物理内存地址后,再通过物理地址访问内存

3.映射关系有哪些
分段、分页、段页

4.分段有哪些问题
a.外部内存碎片:会导致未使用内存空间不连续而无法加载新的程序
解决方法:内存交换,先把原有程序从内存读回硬盘,再从硬盘读回内存,从而在内存中空出连续的未使用空间
b.内存交换效率低:每次交换的段所占的空间比较大,就会导致交换速度慢,影响程序的执行速度
解决方法:分页

5.页表的存储位置
内存

6.单级页表的问题
进程多的话,储存页表会占用较大的空间
解决方案:多级页表

7.多级页表存在的问题
由于虚拟地址到物理地址的转换多了几道工序,就降低了两个地址的转换速度
解决方案:在CPU芯片中加入cache用于存储常用的页表项,即TLB

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值