存储器管理3.ppt_第1页
存储器管理3.ppt_第2页
存储器管理3.ppt_第3页
存储器管理3.ppt_第4页
存储器管理3.ppt_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、存 储 器 管 理,虚拟存储器部分(三),上,下,关闭,音乐欣赏,课前复习,上,下,关闭,音乐欣赏,本讲义要点,Belady现象,抖动现象,工作集,上,下,关闭,音乐欣赏,Belady现象,一.概念引入 一般来讲,对于任何一个程序或进程,如果在内存中给它分配的“页框”数越多,那么,系统发生缺页的次数就应该越少。这个推论在极限情况下是成立的。因为如果给一个进程分配了它所要求的全部页框,那么系统就不会发生缺页现象。但是在使用FIFO置换算法时,在未给进程或程序分配足它所要求的全部页框时,有时会出现分配的页框(物理页面)数越多,系统缺页次数反而增加的奇怪现象。我们称之为Belady现象。,二.举例说

2、明 设一个进程一共有8页,且已经在内存中分配了3个页框(物理页面),程序访问内存的顺序(访问串)为7-0-1-2-0-3-0-4-2-3-0-3-2-1-2-0-1。请用FIFO算法作出其置换图。,分配三个页框时的情况(缺页次数=12),上,下,关闭,音乐欣赏,0,0,0,1,1,1,1,4,4,4,4,0,0,0,0,2,3,3,3,3,7,7,7,7,1,0,2,1,2,3,0,3,2,4,0,3,0,2,1,0,7,为该进程分配4个页框(物理页面)时的置换情况如下:,1,1,2,2,2,2,分配四个页框时的情况(缺页次数=9),*:这是一个在正常情况下的例子随着页框数的增加,其缺页次数也

3、降低了。下面我们介绍一个异常情况时的例子。,Belady现象举例,上,下,关闭,音乐欣赏,设一个进程一共有5页, 程序访问内存的顺序(访问串)为1-2-3-4-1-2-5-1-2-3-4-5。其拥有3个页框和4个页框且用FIFO算法置换时的置换情况分别如下:,分配三个页框时的情况(缺页次数=9),分配四个页框时的情况(缺页次数=10),为什么,上,下,关闭,音乐欣赏,FIFO置换算法产生 Belady现象的原因是在于它根本没有考虑程序执行时的动态特征。,上,下,关闭,音乐欣赏,工作集,缺页率与进程所分得的页框数存在密切关系。如下图所示:该图给出了缺页率与进程分得页框数 n 之间的关系曲线。由图

4、可知,缺页率随着页框数的减少而单调递增,并在所分到的页框数较少处出现一个拐点。在拐点下限以左时,每增加一个页框后都可以明显的减少缺页率;而过了拐点,在下限以右时,每增加一个页框后,对缺页率的改善不明显。通常,为进程分配的内存中的页框数应取在该曲线的拐点左右,如果内存空间较充足,所取的页框数目还可以略大些。,缺 页 率,0,上限,下限,页框数 n,拐 点,为什么,上,下,关闭,音乐欣赏,之所以存在这样的曲线,是因为缺页率的大小与进程运行时的所谓工作集有关。这是因为,程序在运行时对页的访问是不均匀的,即是在某段时间内的访问仅仅局限于有限的若干个页。如果能够预知程序在某段时间内要访问哪些页,并把它们

5、提前调入内存,将会大大的提高内存的命中率,减小缺页率,从而减少置换工作,提高CPU的利用率。,哪什么又叫“工作集”呢?,上,下,关闭,音乐欣赏,所谓“工作集”是指, 在某段时间间隔内, 进程实际要访问的页 面的集合。,上,下,关闭,音乐欣赏,虽然程序只需要少量的几页在内存中就可以运行,但是为了使程序能有效的运行,较少地产生缺页,就必须把程序的工作集全部放在内存中。然而,我们无法预知程序在不同的时刻将访问哪些页面,因而只能利用程序过去某段时间内的行为,作为程序在将来某段时间内的近似。,某进程在时间 t 的工作集表示为 W(t, ),其中称为工作集“窗口尺寸”。 正确的选择工作集窗口的大小,对存储

6、器 的有效利用和系统吞吐量的提高,都将产生重要的影响。 如果选择过大以致能将一个进程的所有页都装入内存, 这样虽不会产生缺页,但存储器的利用将不充分,从而失去虚拟存 储器的意义。但是,如果选择的过小,为此就不能将进程所需的 工作集全部装入内存,而将导致系统频繁的发生缺页中断,因而 反倒降低了系统的吞吐量。所以工作集应选择适中。,上,下,关闭,音乐欣赏,抖动现象,一.概念引入 在进行页面置换的时候,当一页或多页被频繁的换进和换出时,使进程的绝大部分的时间都用在这些无谓的换进/换出工作上,而系统几乎不能完成任何有效的工作。这种现象被称着“抖动”现象,此时的进程处于抖动状态。,二.抖动的预防 为了保

7、证系统可靠和提高其吞吐量,就必须防止发生抖动。其方法很多,但都是通过调节多道程序度来实现的。 1.采取足部置换策略 当某进程发现缺页后,仅在自己的内存空间范围内置换页面,同时又不允许其它进程获得新的页框。这样,即使有某个进程发生“抖动”,也不会导致其它进程发生抖动,从而使抖动局限于一个较小的范围内。,上,下,关闭,音乐欣赏,3.L=S准则 当进程产生缺页的平均时间(L)=系统处理进程缺页的平均时间(S)时,此时CPU的利用率最好。 4.挂起若干进程 当多道程序度偏高是时,为了防止发生“抖动”,可以将一些进程挂起,以便释放出内存空间来满足将要发生抖动的进程。被挂起的进程有以下三种情况: (1)通常都是优先权最低或较低的; (2)当内存非常拥挤时,也可以挂起一个并不很重要但容量却很大的进程,以便一次性释放较大的内存空间; (3)将具有最多剩余执行时间的进程挂起。,上,下,关闭,音乐欣赏,2.在CPU调度程序中引入工作集算法 调度程序从外存上调入一个新作业到内存,来提高多道程序度,从而改善CPU的利用率。在引入工作集算法后,调

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论