操作系统概念:虚拟内存

〇.教学大纲

教学内容:

虚拟内存的概念,请求调页机制,进程创建之内存映射,case study-Windows内存映像文件,页面替换算法,页框分配策略,case study-Linux中内存的分配和回收。

教学重难点:

虚拟内存的概念,请求调页机制,页面替换算法及性能评价。

教学要求:

理解和掌握虚拟内存及请求调页机制。

由教学大纲可以看出,这章主要内容就是调页机制,本章实验和作业也都是相关内容。

一.虚拟存储器的定义

虚拟存储指仅把作业的一部分装入内存便可运行的存储管理系统,通过作业各部分的动态调入和置换,用户所感觉的存储空间比实际空间大,称之为虚空间。

虚空间的逻辑大小 = 可寻址范围
虚空间的实际大小 = 内存+外存对换区

虚拟内存的效率依赖于程序的局部性(时间,空间),如果没有局部性,那么大量的页换进换出反而会使得程序变得很慢

二.请求式分页

在这里插入图片描述
请求式分页有以下几个问题:

1.分配策略
不必一次装入作业的所有页面,究竟装入时分配多少个内存块?
平均分配算法
按比例分配算法
考虑优先权的分配算法

2.页面调入策略
不是所有的页面都在内存中,哪些页面应该在内存中?
剩下的页面何时调入?

3.页面置换策略
当没有空闲内存块,又需要调入新的页面时,要将已装入内存的页面置换出去,如何选取页面置换?

页面置换策略的目标:减少抖动,降低同一页面的重复置换

三.重点:页面置换算法和例题

页面置换算法:

(1)最佳置换策略
被置换的内存页面应是以后永久不再需要或最久不再访问的页面——理想算法

算法:调入一页而必须淘汰一个旧页时,所淘汰的页应该是以后不再访问的页或距现在最长时间后再访问的页。

特点:不是实际可行的算法,可用来作为衡量各种具体算法的标准,具有理论意义。

(2)最简单的算法——FIFO
按照页面进入内存的先后顺序置换
在这里插入图片描述
算法:总是淘汰最先调入主存的那一页,或者说在主存中驻留时间最长的那一页(常驻的除外)。

理由:最早调入内存的页面,其不再被访问的可能性最大。

(3)最近最少使用(LRU)
之前最近一段时间最少使用过的页面将被置换

算法:淘汰的页面是在最近一段时间里较久未被访问的那页。

原理:根据程序局部性原理,那些刚被使用过的页面,可能马上还要被使用,而在较长时间里未被使用的页面,可能不会马上使用到。

例题:
在这里插入图片描述
答案为:10 11 8

(4) CLOCK算法(二次机会)
增加一位,表示第一次机会是否使用(每次块被使用这位就置1),当该位为0时块才会被替换

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值