C虚拟存储器课件_第1页
C虚拟存储器课件_第2页
C虚拟存储器课件_第3页
C虚拟存储器课件_第4页
C虚拟存储器课件_第5页
已阅读5页,还剩42页未读 继续免费阅读

下载本文档

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

文档简介

1、C虚拟存储器PPT课件4.6 虚拟存储器的基本概念 前面所介绍的各种存储管理方式具有一个共同前面所介绍的各种存储管理方式具有一个共同的特点,即作业必须一次性全部装入主存空间后才的特点,即作业必须一次性全部装入主存空间后才能运行,直至作业运行结束后才释放所占有的全部能运行,直至作业运行结束后才释放所占有的全部主存资源。这样就会出现以下情况:主存资源。这样就会出现以下情况:1当主存空间不能满足作业地址空间要求时,作业就不能装当主存空间不能满足作业地址空间要求时,作业就不能装入主存,无法运行。入主存,无法运行。2当有大量作业要求运行时,由于主存容量有限,只能将少当有大量作业要求运行时,由于主存容量有

2、限,只能将少数作业装入主存运行,而其他作业留在辅存上等待。数作业装入主存运行,而其他作业留在辅存上等待。C虚拟存储器PPT课件4.6.1 虚拟存储器的引入虚拟存储器的引入 常规存储管理方式的特征是:常规存储管理方式的特征是:一次性一次性、驻留性驻留性。局部性原理局部性原理 早在1968年PDenning就指出过,程序在执行时将呈程序在执行时将呈现出局部性规律,即在一段时间内,程序的执行仅局限于某现出局部性规律,即在一段时间内,程序的执行仅局限于某个部分;相应地,它所访问的存储空间也局限于某个区域内。个部分;相应地,它所访问的存储空间也局限于某个区域内。那么程序出现局部性规律原因可以归结为以下几

3、点: (1)程序在执行时,除了少部分的转移和过程调用指令外,大多数仍是顺序执行的。 (2)子程序调用将会使程序的执行由一部分内存区域转至另一部分区域。但在大多数情况下,过程调用的深度都不超过5。 (3)程序中存在许多循环结构,循环体中的指令被多次执行。 (4)程序中还包括许多对数据结构的处理,如对连续的存储空间数组的访问,往往局限于很小的范围内。C虚拟存储器PPT课件局部性原理局部性原理:程序在执行时将呈现出局部性规律,即:程序在执行时将呈现出局部性规律,即在一较短的时间内,程序的执行仅局限于某个部分;在一较短的时间内,程序的执行仅局限于某个部分;相应地,它所访问的存储空间也局限于某个区域。具

4、相应地,它所访问的存储空间也局限于某个区域。具体地表现为:体地表现为:时间的局限性时间的局限性,如果程序中的某条指令一旦执行,如果程序中的某条指令一旦执行,则不久以后该指令可能再次执行;某个数据被访问,则不久以后该指令可能再次执行;某个数据被访问,则不久以后该数据可能被再次访问。原因是在程序中则不久以后该数据可能被再次访问。原因是在程序中存在着大量的循环操作。存在着大量的循环操作。空间的局限性空间的局限性,一旦程序访问了某个存储单元,在,一旦程序访问了某个存储单元,在不久以后,其附近的存储单元也被访问,即程序在一不久以后,其附近的存储单元也被访问,即程序在一段时间内所访问的地址可能集中在一定的

5、范围内。原段时间内所访问的地址可能集中在一定的范围内。原因是程序的顺序执行。因是程序的顺序执行。C虚拟存储器PPT课件 根据局部性原理,一个作业在运行之前,没有必要把全根据局部性原理,一个作业在运行之前,没有必要把全部作业装入内存,而仅将那些当前要运行的那部分页面或段,部作业装入内存,而仅将那些当前要运行的那部分页面或段,先装入内存便可启动运行,其余部分暂时留在磁盘上。程序先装入内存便可启动运行,其余部分暂时留在磁盘上。程序在运行时如果它所要访问的页(段)已调入内存,便可继续在运行时如果它所要访问的页(段)已调入内存,便可继续执行下去;但如果程序所要访问的页(段)尚未调入内存执行下去;但如果程

6、序所要访问的页(段)尚未调入内存(称为缺页或缺段),此时程序应利用(称为缺页或缺段),此时程序应利用OS所提供的所提供的请求调页请求调页(段)功能(段)功能,将它们调入内存,以使进程能继续执行下去。,将它们调入内存,以使进程能继续执行下去。如果此时内存已满,无法再装入新的页(段),则还须再利如果此时内存已满,无法再装入新的页(段),则还须再利用页(段)的用页(段)的置换功能置换功能,将,将内存中暂时不用的页(段)调出内存中暂时不用的页(段)调出至磁盘上至磁盘上,腾出足够的内存空间后,再将所,腾出足够的内存空间后,再将所要访问的页(段)要访问的页(段)调入内存调入内存,使程序继续执行下去。这样,

7、便可使一个大的用,使程序继续执行下去。这样,便可使一个大的用户程序在较小的内存空间中运行;也可使内存中同时装入更户程序在较小的内存空间中运行;也可使内存中同时装入更多的进程并发执行。多的进程并发执行。从用户角度看从用户角度看,该系统所具有的内存容,该系统所具有的内存容量,将比实际内存容量大得多,人们把这样的存储器称为虚量,将比实际内存容量大得多,人们把这样的存储器称为虚拟存储器。拟存储器。3、虚拟存储器的定义虚拟存储器的定义C虚拟存储器PPT课件 虚拟存储器虚拟存储器是指具有是指具有请求调入功能请求调入功能和和置换功能置换功能,能从逻辑,能从逻辑上对内存进行扩充的一种存储器系统。实际上,用户所

8、看到的上对内存进行扩充的一种存储器系统。实际上,用户所看到的大容量只是一种感觉,是虚的,其逻辑容量由大容量只是一种感觉,是虚的,其逻辑容量由内存内存和和外存容量外存容量之和之和决定,其运行速度决定,其运行速度接近于内存的速度接近于内存的速度,而,而成本接近于外存成本接近于外存,因而是一种性能非常优越的存储器管理技术,被广泛应用于各因而是一种性能非常优越的存储器管理技术,被广泛应用于各类计算机中。类计算机中。虚拟存储器的特征虚拟存储器的特征1)离散性(基础)2)多次性(一个作业分多次调入)3)对换性(程序和数据的换入/换出)4)虚拟性(逻辑上扩充内存容量)C虚拟存储器PPT课件4.6.2 虚拟存

9、储器实现方式虚拟存储器实现方式建立在离散分配基础上建立在离散分配基础上1.分页请求系统分页请求系统: 在分页系统的基础上,增加了在分页系统的基础上,增加了请求调页功能请求调页功能和和页面置换页面置换功能功能所形成的所形成的页式虚拟存储系统页式虚拟存储系统。它允许只装入若干页(而。它允许只装入若干页(而非全部程序)的用户程序和数据,就可以启动运行,以后再非全部程序)的用户程序和数据,就可以启动运行,以后再通过调页功能和页面置换功能,陆续把将要运行的页面调入通过调页功能和页面置换功能,陆续把将要运行的页面调入内存,同时把内存,同时把暂不运行的页面置换到外存上暂不运行的页面置换到外存上,置换时,置换

10、时以页面以页面为单位为单位。2.请求分段系统请求分段系统: 在分段系统的基础上,增加了在分段系统的基础上,增加了请求调段请求调段和和分段置换功能分段置换功能所形成的段式虚拟存储系统。它允许只装入若干段(而非全所形成的段式虚拟存储系统。它允许只装入若干段(而非全部段)的用户程序和数据,就可以启动运行,以后再通过调部段)的用户程序和数据,就可以启动运行,以后再通过调段功能和置换功能将不运行的段调出,同时调入将要运行的段功能和置换功能将不运行的段调出,同时调入将要运行的段,置换段,置换以段为单位以段为单位。C虚拟存储器PPT课件虚拟存储管理方式:为了满足用户对内虚拟存储管理方式:为了满足用户对内存的

11、需要,进一步提高内存利用率,又存的需要,进一步提高内存利用率,又形成了多种虚拟存储管理方式。其方式形成了多种虚拟存储管理方式。其方式有:有:a.请求分页式管理方式请求分页式管理方式 ;b.请求分段式管理方式;请求分段式管理方式;c.请求段页式管理方式。请求段页式管理方式。C虚拟存储器PPT课件 动态页式管理是在分页存储管理基础上发展起来动态页式管理是在分页存储管理基础上发展起来的的, ,增加了增加了请求分页功能请求分页功能和和页面置换功能页面置换功能实现虚拟存实现虚拟存储系统。储系统。指导思想:指导思想:在作业运行之前,在作业运行之前,不必不必把作业的整个地址把作业的整个地址空间空间全部装入主

12、存全部装入主存,而只要求当前需要的,而只要求当前需要的一部分装入一部分装入主存主存即可。这样,对作业地址空间,当其即可。这样,对作业地址空间,当其作业的大小作业的大小超过主存超过主存可用空间时,用页式存储管理实现虚拟存储可用空间时,用页式存储管理实现虚拟存储器管理。这个方案可以为每个用户提供一个虚拟存储器管理。这个方案可以为每个用户提供一个虚拟存储器,其器,其虚拟空间比主存的空间大虚拟空间比主存的空间大。这对编制大型程序。这对编制大型程序来说,带来了很多方便。来说,带来了很多方便。4.74.7请求分页存储管理方式请求分页存储管理方式( (动态页式管理动态页式管理) )C虚拟存储器PPT课件1

13、1 请求分页概念请求分页概念 请求分页技术当一个用户程序要调入内存时,请求分页技术当一个用户程序要调入内存时,不是将该程序全部页面装入内存,而是只装入部分不是将该程序全部页面装入内存,而是只装入部分页面到内存,就可启动程序运行页面到内存,就可启动程序运行,在运行的过程中,在运行的过程中,如果如果发现要运行的程序或要访问数据不在内存发现要运行的程序或要访问数据不在内存,则,则向系统发出向系统发出缺页中断请求缺页中断请求,系统,系统在处理这个中断时在处理这个中断时,将在外存将在外存相应的页调入内存相应的页调入内存,该程序继续运行该程序继续运行。 为了实现请求分页,系统需要有:为了实现请求分页,系统

14、需要有:(1)(1)页表机制页表机制、(2)(2)缺页中断机构缺页中断机构、(3)(3)地址变换机构地址变换机构 (4)(4)页面置换算法页面置换算法C虚拟存储器PPT课件(1 1)页表机制)页表机制 状态位状态位P:P:用于指示该页是否已调入内存,用于指示该页是否已调入内存,供程序访问时参考供程序访问时参考; 访问字段访问字段A:A:用于记录本页在一段时间内用于记录本页在一段时间内被访问的次数被访问的次数,或记,或记录本页最近已有多长时间未被访问,供选择录本页最近已有多长时间未被访问,供选择换出页面时参考换出页面时参考; 修改位修改位M:M:表示该页在调入内存后是否被修改过,供表示该页在调入

15、内存后是否被修改过,供置换页面置换页面时参考;时参考; 外存地址外存地址: :用于指示该页用于指示该页在外存上的地址在外存上的地址,供调入页时使用。供调入页时使用。页号页号物理块号物理块号 状态位状态位P P 访问字段访问字段A A 修改位修改位M M 外存地址外存地址C虚拟存储器PPT课件C虚拟存储器PPT课件(2 2)缺页中断机构)缺页中断机构 在请求分页系统中,每当所要访问的页面不在内存时,在请求分页系统中,每当所要访问的页面不在内存时,便产生一缺页中断,请求便产生一缺页中断,请求OSOS将所缺页调入内存。特点:将所缺页调入内存。特点: 1)1)在指令执行期间在指令执行期间产生和处理中断

16、信号;产生和处理中断信号; 2)2)一条指令在执行期间,可能产生一条指令在执行期间,可能产生多次缺页中断多次缺页中断B:A:指令指令TO BCopy A页面页面6 65 54 43 32 21 1C虚拟存储器PPT课件 地址变换机构地址变换机构 缺页中断处理保留CPU现场从外存中找到缺页内存满否?选择一页换出该页被修改否?将该页写回外存OS命令CPU从外存读缺页启动I/O硬件将一页从外存换入内存修改页表否是是否页表项在快表中?CPU检索快表访问页表否页在内存?修改访问位和修改位形成物理地址地址变换结束否页号页表长度?开始程序请求访问一页产生缺页中断请求调页修改快表是越界中断是是内存分配内存分配

17、1 1 最小物理块数的确定最小物理块数的确定( (由硬件结构和性能决定由硬件结构和性能决定) ) 最小物理块数:最小物理块数:能保证进程正常运行所需要的最小物理块数。能保证进程正常运行所需要的最小物理块数。2 2 物理块的分配和置换物理块的分配和置换 1)1)固定分配局部置换固定分配局部置换 2)2)可变分配全局置换可变分配全局置换 3)3)可变分配局部置换可变分配局部置换3 3 物理块分配算法物理块分配算法 1)1)平均分配平均分配 2)2)按比例分配按比例分配 各进程的页面总和:各进程的页面总和:S=(S1+S2+S3+S=(S1+S2+S3+Sn)+Sn) 每个进程所能分配到的物理块:每

18、个进程所能分配到的物理块:bi=(Sn/s)bi=(Sn/s)* *m m 3 3)考虑优先权的分配算法:一按比例;二按优先权)考虑优先权的分配算法:一按比例;二按优先权内存分配策略和分配算法内存分配策略和分配算法C虚拟存储器PPT课件1 1、何时调入页面、何时调入页面 1)1)预调页策略预调页策略 系统根据作业(进程)运行的情况,预测哪些页将要运行,在系统根据作业(进程)运行的情况,预测哪些页将要运行,在其运行之前先行调入内存,这样在程序运行的过程中就不会出现缺其运行之前先行调入内存,这样在程序运行的过程中就不会出现缺页中断。这种方法从表面上看起来很好,但系统无法预计系统中作页中断。这种方法

19、从表面上看起来很好,但系统无法预计系统中作业的运行情况,难以实现。业的运行情况,难以实现。 2)2)请求调页策略请求调页策略 进程在执行的过程中,发现要执行的程序或处理的数据不在内进程在执行的过程中,发现要执行的程序或处理的数据不在内存,向系统提出调入相应程序的请求,系统响应用户的请求。存,向系统提出调入相应程序的请求,系统响应用户的请求。2 2、从何处调入页面、从何处调入页面文件区和对换区文件区和对换区1)1)系统拥有足够的对换区空间系统拥有足够的对换区空间对换区对换区2)2)系统缺少足够的对换区空间系统缺少足够的对换区空间对换区,文件区对换区,文件区3)UNIX3)UNIX方式方式对换区,

20、文件区对换区,文件区调页策略调页策略C虚拟存储器PPT课件 页面置换概念页面置换概念 抖动(或称颠簸抖动(或称颠簸):如果分配给进程的存储块数):如果分配给进程的存储块数小于进程所需要的最小值,进程的运行将很频繁地产小于进程所需要的最小值,进程的运行将很频繁地产生缺页中断的现象,即就是同一个页面频繁的在主、生缺页中断的现象,即就是同一个页面频繁的在主、外存之间入页和出页这种现象。外存之间入页和出页这种现象。 为了防止抖动的产生,在页面置换中,为了防止抖动的产生,在页面置换中,一方面一方面要要采用合适的置换算法;采用合适的置换算法;另一方面另一方面在进行页面淘汰或置在进行页面淘汰或置换时,可以将

21、缺页的进程锁住,不让其换出页面,从换时,可以将缺页的进程锁住,不让其换出页面,从而防止抖动的发生。而防止抖动的发生。另一个办法另一个办法就是设置较大的内存就是设置较大的内存工作区。工作区。4.8 页面置换算法C虚拟存储器PPT课件页面置换算法分类(1)最佳最佳置换置换算法(算法(OPT算法)算法) (2)先进先出算法(先进先出算法(FIFO算法)算法)(3)最近最久未使用(最近最久未使用(LRU)置换算法)置换算法(4) Clock置换算法置换算法(5)其他置换算法:最少使用和页面缓冲其他置换算法:最少使用和页面缓冲C虚拟存储器PPT课件(1)最佳算法(OPT算法) 从内存中移出从内存中移出以

22、后不再使用的页面以后不再使用的页面或或选择最选择最长时间内不再被访问的页面长时间内不再被访问的页面予以淘汰。这样产生予以淘汰。这样产生的缺页中断次数最少,可获得最低的缺页中断率。的缺页中断次数最少,可获得最低的缺页中断率。但是由于无法预知哪个页面是未来最长时间内不但是由于无法预知哪个页面是未来最长时间内不被访问的,所以该算法只是一种理论上的算法被访问的,所以该算法只是一种理论上的算法. 注意:如果所访问的页还没装入内存,便将发注意:如果所访问的页还没装入内存,便将发生一次缺页中断,访问过程中发生缺页中断生一次缺页中断,访问过程中发生缺页中断的次数就是的次数就是缺页次数缺页次数,而缺页次数除以总

23、的,而缺页次数除以总的访问次数,就是访问次数,就是缺页率缺页率。C虚拟存储器PPT课件7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 17 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1707107102302342302102107102302342342302302102102102107107C虚拟存储器PPT课件(2)先进先出算法(FIFO算法)这种算法的基本思想是:总是先淘汰那些驻留这种算法的基本思想是:总是先淘汰那些驻留在内存时间最长的页面,即先进入内存的页面在内存时间最长的页面,即先进入内存的页面先被置换掉。理由是:最先进入

24、内存的页面不先被置换掉。理由是:最先进入内存的页面不再被访问的可能性最大再被访问的可能性最大。这种算法实现起来比较简单。如下图所示这种算法实现起来比较简单。如下图所示 :C虚拟存储器PPT课件7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 1 7 0 17 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 1 7 0 1707107210321032403240324032103210721072107最早进入最晚进入C虚拟存储器PPT课件 采用采用FIFOFIFO算法还会产生一种奇怪现象,直观上,分算法还会产生一种奇怪现象,直观上,分配给作业的配给作业的物理

25、块越多物理块越多,进程执行时发生的,进程执行时发生的缺页率就缺页率就越小越小,但对,但对FIFOFIFO算法这个结论并不是绝对的。在某些算法这个结论并不是绝对的。在某些情况下,当分配的情况下,当分配的物理块数增多反而导致更多的缺页物理块数增多反而导致更多的缺页中断中断,这种现象称为,这种现象称为FIFOFIFO异常现象异常现象或称或称BeladyBelady现象,现象,即在即在未未给进程或作业给进程或作业分足分足它所要求的页面数时,它所要求的页面数时,有时会出有时会出现分配的物理块数增多,缺页次数反而增加的奇怪现象。现分配的物理块数增多,缺页次数反而增加的奇怪现象。(根本原因就是没有考虑程序执

26、行的动态特征)(根本原因就是没有考虑程序执行的动态特征) 某 进 程 共 有某 进 程 共 有 5 5 页页 , , 依 次 访 问 页 面 的 序 列依 次 访 问 页 面 的 序 列为为:1,2,3,4,1,2,5,1,2,3,4,5;:1,2,3,4,1,2,5,1,2,3,4,5;当系统为该进程分配的物理当系统为该进程分配的物理块数块数M=3M=3时时, ,缺页中断次数为缺页中断次数为9 9次次, ,其缺页中断率为其缺页中断率为9/12=75%9/12=75%; ;但是如果为进程分配的物理块数但是如果为进程分配的物理块数M=4M=4时时, ,缺页中断次数为缺页中断次数为1010次次,

27、,其缺页中断率为其缺页中断率为10/12=83.3%10/12=83.3%; ;C虚拟存储器PPT课件123412555344123412225331234111255123444512345123334512341222345123111234512123412512345+(“+”表示产生一次缺页中断)C虚拟存储器PPT课件 当需要淘汰某一页时,算法选择离当前当需要淘汰某一页时,算法选择离当前最近最近的一段时间的一段时间内内最久没有使用最久没有使用过的页先淘汰。其理由是,过的页先淘汰。其理由是,如果如果某页被访问某页被访问了,则它可能马上还要被访问,了,则它可能马上还要被访问,反之反之如果

28、该页很长时间未被如果该页很长时间未被访问,则它在最近一段时间内也不会被访问。为了记录页面访问,则它在最近一段时间内也不会被访问。为了记录页面自上次被访问以来所经过的时间自上次被访问以来所经过的时间, ,需要在页表中增加一个需要在页表中增加一个引用引用位标志位标志, ,在每次被访问后将引用位置在每次被访问后将引用位置0,0,重新计时重新计时。在发生缺页。在发生缺页中断需要调入新的页面时中断需要调入新的页面时, ,通过检查页表中各页的通过检查页表中各页的引用位引用位, ,选选择最长时间没有被访问过的页面淘汰择最长时间没有被访问过的页面淘汰, ,并且把主存中所有页面并且把主存中所有页面的引用位的引用

29、位全部清零全部清零, ,重新计时重新计时。因此。因此, ,要实现要实现LRU算法,需要算法,需要付出付出很大的系统开销很大的系统开销。在实际系统中,经常采用。在实际系统中,经常采用LRULRU的近似算的近似算法。法。(3).最近最久未使用置换算法(LRU)C虚拟存储器PPT课件LRULRU近似算法是在页表中为近似算法是在页表中为每一页增加一个引用位每一页增加一个引用位, ,当该页当该页被访问时被访问时, ,由硬件将它的由硬件将它的引用位置为引用位置为1 1, ,操作系统选择一个操作系统选择一个时间周期时间周期T T, ,每隔一个周期每隔一个周期T,T,将页表中所有页面的引用位置将页表中所有页面

30、的引用位置0 0, ,这样在时间周这样在时间周期期T T内内, ,被访问的页面引用位为被访问的页面引用位为1 1, ,而没有被访问过的页面的引用位而没有被访问过的页面的引用位仍为仍为0 0。当产生缺页中断时当产生缺页中断时, ,可以从引用位为可以从引用位为0 0的页面中选择一页调的页面中选择一页调出出, ,同时将所有页面的引用位全部置同时将所有页面的引用位全部置0 0。实现:可利用一个特殊的实现:可利用一个特殊的栈栈来保存来保存当前使用的当前使用的各个页面的页面号。各个页面的页面号。每当进程访问某页面时,便将该页面的页面号从栈中移出,再将每当进程访问某页面时,便将该页面的页面号从栈中移出,再将

31、它压入栈顶。因此,它压入栈顶。因此,栈顶栈顶始终是始终是最新被访问最新被访问的页面的编号,而的页面的编号,而栈栈底底则是则是最近最久未使用最近最久未使用页面的页面号。页面的页面号。 C虚拟存储器PPT课件7 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 17 0 1 2 0 3 0 4 2 3 0 3 2 1 2 0 1 7 0 1707107210302403240324032123021710021032302230213102071107C虚拟存储器PPT课件LRU近似算法这种算法,只要在存储分块表(或页表)中设这种算法,只要在存储分块表(或页表)中设一个一个“

32、引用位引用位”,当存储分块表中的某一页被,当存储分块表中的某一页被访问时,该位由硬件自动置访问时,该位由硬件自动置1,并由页面管理,并由页面管理软件周期性把所有引用位置软件周期性把所有引用位置0。这样,在一个。这样,在一个时间周期时间周期T内,某些被访问过的页面其引用位内,某些被访问过的页面其引用位为为1,而未被访问过的页面其引用位为,而未被访问过的页面其引用位为0。根据引用位的状态来判别各页面最近的使用情根据引用位的状态来判别各页面最近的使用情况。当需要置换一页面时,选择其引用位为况。当需要置换一页面时,选择其引用位为0的页,如下图所示的算法。的页,如下图所示的算法。LRU近似算法流程图:L

33、RU近似算法举例返回本节C虚拟存储器PPT课件 (4 4)最近最不常用法)最近最不常用法(LFU)(LFU):当需要淘汰时,应淘汰:当需要淘汰时,应淘汰被访问次数最少被访问次数最少的页。一种简单的方法式为每一页设的页。一种简单的方法式为每一页设置一个置一个计数器计数器,每当访问一页时,就把该页对应的计,每当访问一页时,就把该页对应的计数器加数器加1 1,每隔一定的时间周期,每隔一定的时间周期T,T,将所有计数器全部清将所有计数器全部清0 0。当发生缺页中断时,选择。当发生缺页中断时,选择计数值最小计数值最小的页,把它淘的页,把它淘汰,汰,同时同时把所有计数器把所有计数器清清0 0。C虚拟存储器

34、PPT课件请求式分页存储管理性能分析举例1程序设计的质量2页面的大小3分配的内存块数4页面置换算法性能图1 FIFO算法性能分析(m=3) 图2 FIFO算法性能分析(m=4)图3 LRU算法性能分析(m=3)图4 LRU算法性能分析(m=4) 返回本节C虚拟存储器PPT课件3 缺页中断率分析(1)分配给作业的主存块数(2)页面的大小(3)程序编程方法(4)页面调度算法C虚拟存储器PPT课件4.9 请求分段存储管理方式1段表机制2缺段中断机构3请求式分段动态地址变换过程4请求式分段存储管理的优、缺点 与请求分页系统类似,在分段的基础上增加与请求分页系统类似,在分段的基础上增加请求调请求调段段

35、功能和功能和段置换段置换功能,便可形成具有虚拟存储器功能的功能,便可形成具有虚拟存储器功能的请求分段系统。请求分段系统。 为实现请求分段式存储管理为实现请求分段式存储管理,需要有一定的硬件和需要有一定的硬件和相应的软件支持。所需要的硬件支持有相应的软件支持。所需要的硬件支持有,段表机制段表机制、缺缺段中断机构段中断机构以及以及地址变换机构地址变换机构等。等。图:分段的逻辑地址空间1段表 为了实现动态地址变换和存储保护,系统要为每一个作业建立一张段表。段表是进行段调度的主要依据。段表中的每一个表目对应着作业地址空间的一个程序段,其一般格式为:段名段长段的基址存取方式访问字段 A修改位M状态位P扩

36、充位辅存始址C虚拟存储器PPT课件2缺段中断机构 在请求分段式存储管理中,当所要访问的段尚未调入主存时,则由缺段中断机构产生一个缺段中断信号,请求操作系统将所要访问的段调入主存。处理过程如下。处理过程如下: (1)空间分配空间分配; (2)修改段表修改段表; (3)新的段被装入后应让作业重新执行被中断的指令新的段被装入后应让作业重新执行被中断的指令,这这时就能在主存中找到所要访问的段时就能在主存中找到所要访问的段,可以继续执行下去。可以继续执行下去。3请求式分段动态地址变换过程图4.28 请求式分段动态地址变换C虚拟存储器PPT课件4请求分段式存储管理的优缺点请求式分段存储管理有如下优点:(1

37、)可提供大容量的虚存 (2)允许动态增加段的长度 (3)便于段的动态链接 (4)便于实现程序段的共享 (5)便于实现存储保护C虚拟存储器PPT课件请求分段存储管理的缺点是进行地址变换和实现紧凑操作要花费处理机时间,为管理各分段要设立若干表格,需提供额外的存储空间,而且也会像请求分页存储管理一样出现系统抖动现象。C虚拟存储器PPT课件一、选择题一、选择题1、页式虚拟存储管理的主要特点是(页式虚拟存储管理的主要特点是( )。)。 A、不要求将作业装入到主存的连续区域不要求将作业装入到主存的连续区域 B、不要求将作业同时全部装入到主存的连续区域不要求将作业同时全部装入到主存的连续区域 C、不要求进行

38、缺页中断处理不要求进行缺页中断处理 D、不要求进行页面置换不要求进行页面置换2、局部性有两种形式:时间局限性和(局部性有两种形式:时间局限性和( )。)。 A、指令局部性指令局部性 B、数据局部性数据局部性 C、空间局部性空间局部性 D、以上全部以上全部3、虚拟存储系统的基础是程序的局部性理论,此理论的基本含义是(虚拟存储系统的基础是程序的局部性理论,此理论的基本含义是( )。)。 A、程序执行时对主存的访问是不均匀的程序执行时对主存的访问是不均匀的 B、代码的顺序执行代码的顺序执行 C、变量的连续访问变量的连续访问 D、以上全部以上全部4、作业在执行中发生缺页中断,经操作系统处理后,应让其执行(作业在执行中发生缺页中断,经操作系统处理后,应让其执行( )指令。)指令。 A、被中断的前一条被中断的前一条 B、被中断的那一条被中断

温馨提示

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

评论

0/150

提交评论