【0515】虚拟内存

虚拟内存

操作系统软件

什么时候将虚拟内存加载进去物理内存?

读取策略

请求分页式,需要用的时候就加载,存在缺页中断

预约分页式,提前将可能用的虚拟内存加载入物理内存,应用局部原理

放置策略

段式管理有外部碎片,页式管理有内部碎片

段页式两者都有

置换策略

应该把将来最不可能被访问的部分置换掉

帧锁定:内存中一部分页帧是被锁定的

算法1:将来最迟被访问的页被置换[难以实现]OPT

算法2:上一次的使用距当前最久的页被置换LRU

算法3:最先进来的页被替换FIFO

算法4:CLOCK 第一次查到的使用位为0的页被替换,一个页被加载进来时使用位是1,当页被使用时使用位再置为1,当搜索置换页时将所有使用位置为0。**新加载进一页的话,访问指针移动到新加载页的后面一步位置,只有这个时候指针会移动!**只有查找要替换的页时,才算是被访问,使用位才需要变化。

注意:置为1:刚被载入,或者被使用

​ 置为0:被搜索过一次但没被取代就置为0

比较:OPT > LRU >CLOCK >FIFO

页缓冲:包括两张表:空闲表和修改表

驻留集大小对性能影响:固定分配/动态分配【太大浪费,太小经常发生缺页分配】

局部置换/全局置换:

局部置换:动态调整驻留集,当发生页面错误时,从本进程的驻留集调出一页来置换

全局置换:发生缺页中断时,可以把所有进程的空闲驻留集拿来置换

清除策略

请求式清除:

预约式清除:等待一批量一起清除,批量式清除

置换时,要看修改页标志是否为1,修改过的话应该把页面写回磁盘,否则不需要

加载控制:进程太少,进程会可能被阻塞,发生空转

​ 进程太多发生页面抖动,频繁发生缺页中断

进程挂起:

1.最低优先级进程

2.页错误进程

3.最后被激活的进程

4.驻留集最小的进程

5.占用空间最大的进程

6.具有最大剩余执行窗口的进程

小结

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值