版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、虚拟存储管理由于受到到计算机机结构限限制和系系统成本本限制,计算机机系统的的内存容容量总是是有限的的。在传统存存储器管管理中,如果一一个作业业需要运运行,系系统必须须将作业业的全部部信息装装入内存存,并在在整个作作业运行行结束后后,才能能释放内内存。如果一个个作业信信息大于于内存容容量,则则无法装装入内存存,也无无法运行行;如果果系统有有大量的的作业申申请进入入内存,则系统统只能接接纳相当当有限的的作业,系统的的多道度度和性能能都难以以得到提提高。通过对进进程运行行的分析析而发现现:在进进程执行行时,并并非同时时需要作作业的全全部信息息。虚拟存储储器概念念在进程的的执行过过程中,作业的的某部分
2、分信息,可能从从来不会会使用;也可能能运行完完一次后后,再也也不会使使用。如果将这这些不使使用的信信息存放放在物理理内存中中,对内内存是一一种浪费费。同样样,既然然作业的的全部信信息是分分阶段需需要,则则可以分分阶段将将作业信信息调入入内存,而不需需要一次次将作业业的全部部信息调调入内存存。于是是,提出出了这样样的问题题:能否将作作业不执执行的部部分暂时时存放在在外存,待到进进程需要要执行时时,再将将其从外外存调入入内存。将外存作作为内存存的补充充,从逻逻辑上扩扩充内存存,是虚拟存储储管理的的基本思思想。虚拟存储储器概念念人们通过过对Fortran语言程序序、操作作系统过过程和通通用科学学计算
3、程程序的分分析,发发现了对对程序和和数据的的访问具具有如下下特点:(1)顺序性性程序在运运行时除除了少部部分的分分支和过过程调用用指令外外,大部部分都是是顺序执执行。对对大程序序没有必必要把所所有的信信息一次次都放入入内存。(2)局限性性程序在运运行时,如果有有若干个个过程调调用,程程序执行行的轨迹迹会转移移至调用用区域,但过程程调用一一般由相相对较少少的指令令组成。当程序在某某个局部部范围内内运行时时,系统统可以只只将相关关的局部部信息放放入内存存,其它它不相关关或暂时时不相关关的信息息放入外外存。虚拟存储储器概念念(3)多次性性虽然程序序中可能能包含许许多循环环结构,但是这这些循环环结构通
4、通常只由由少数指指令构成成。这些些集中在在一起的的少数指指令被多多次执行行,在内内存中可可以只放放入一个个版本,在需要要时才将将该版本本调入内内存。(4)独立性性程序中可可能存在在彼此互互斥或相相互独立立的部分分,每次次运行时时总有部部分程序序不被使使用,没没有必要要将不被被使用的的部分放放入内存存。虚拟存储储器概念念虚拟存储储器定义义:是指具具有请求求调入功功能和置置换功能能,能够够从逻辑辑上对内内存空间间进行扩扩展,允允许用户户的逻辑辑地址空空间大于于物理内内存地址址空间的的存储管管理系统统。虚拟存储储器的组织形式式如下图图所示。虚拟存储储管理的的组织虚拟存储储器概念念在虚拟存储储器中,一
5、般将将硬盘作作为外存存,因此此,硬盘盘也被称称为对换换设备。虚拟存储储器的逻辑地址址空间大大小与物物理内存存大小没没有直接接关系,由计算算机系统统的地址址结构决决定。如果计算算机系统统的地址址为32位,则可可寻址的的范围为为04G;如果计计算机系系统的地地址为20位,则可可寻址的的范围为为01M。计算机机系统的的可寻址址范围为为虚拟存储储器的最大范围围。虚拟存储储器概念念虚拟存储储器完成成了逻辑地地址空间间和物理理地址空空间的分分离,能能够在一一个小的的物理存存储空间间上提供供给程序序一个巨巨大的虚虚拟存储储器空间间。虚拟存储储器的基础是内内存的离离散管理理,实现现的方式式为请求分页页式虚拟拟
6、存储器器管理或请求分段段式虚拟拟存储器器管理。虚拟存储储器概念念以页为单单位置换换需硬件支支持请求分页页的页表表机构缺页中断断机构地址变化化机构需实现请请求分页页的软件件用于实现现请求调调页的软软件实现页面面置换的的软件请求分页页系统请求分段段系统以段为单单位置换换需硬件支支持请求分段段的段表表机构缺段中断断机构地址变化化机构需实现请请求分段段的软件件用于实现现请求调调段的软软件实现段面面置换的的软件虚拟存储储器特征征多次性:最重要要的特征征虚拟存储储器在实实现上需需要将一一个作业业分多次次调入内内存运行行。对换性虚拟存储储器允许许作业在在运行过过程中将将暂时不不运行的的部分换换出,在在需要时
7、时再换入入,对换换性使得得作业运运行所需需内存更更少,系系统的多多道度提提高。虚拟性虚拟存储储器从逻逻辑上扩扩充内存存容量,使得用用户能够够使用的的内存容容量远远远大于实实际内存存容量,提高了了系统运运行程序序的能力力。虚拟存储储管理的的方式之之一为基基于内存存的分页页管理。分页虚虚拟存储储器管理理的实现现需要增加请求求调页和页面置换换功能。虚拟存储储管理首首先将需需要运行行的作业业放在外外存。当当作业被被调度时时,系统统只将作作业的少少数页面面装入内内存,随随着作业业运行,再通过过页面请请求功能能、调页页功能和和页面置置换功能能,逐次次将作业业需要运运行的页页面调入入内存运运行,并并将暂时时
8、不运行行的页面面换出到到外存。虚拟存储储管理的的主要功功能为请求调页页及页面置置换。请求分页存储管管理请求分页页存储管管理请求分页页的硬件件支持包包括:请求分页页的页表表机制、缺页中中断机构构和地址址变换机机构请求分页页的页表表机制除了页号号和物理理块号外外,增加加了页的的状态位位、外存存地址、修改位位、访问问字段等等信息虚拟存储储器管理下的的页表页表增加加字段的的用途:状态位:用于标标志一个个页面是是否已经经装入内内存。外存地址址:页面面在外存存中的地地址。当当需要将将某页面面调入内内存时,查询页页表中的的外存地地址,通通常是物物理块号号。修改位:页面到到内存后后是否被被修改过过的标志志,以
9、确确定如果果页面被被换出内内存时,是否需需要写入入外存。如果页页面在内内存没有有被修改改过,页页面中的的内容和和外存中中的内容容一致,则被换换出内存存时不需需要再写写入外存存,节约约了写入入外存的的时间。如果页页面在内内存中已已经被修修改过了了,被换换出内存存时需要要写入外外存。请求分页页存储管管理访问字段段:标志志页面在在内存时时是否被被访问过过。用于于页面置置换算法法时系统统是否将将页面换换出内存存时参考考。如果果页面被被访问过过,在页页面置换换时,系系统考虑虑该页面面可能以以后会被被再次访访问而不不将其换换出。请求分页页存储管管理请求分页页存储管管理缺页中断断机构在进程运运行过程程中,当
10、当发现所所访问的的页面不不在内存存时,缺缺页中断断机构便便产生一一缺页中中断信号号,通知知操作系系统将所所需要的的页面调调入内存存。缺页中断断与一般般中断一一样,都都需要经经历保护护CPU环境、分分析中断断原因、转入中中断程序序处理、中断处处理后恢恢复CPU环境等步步骤。请求分页页存储管管理缺页中断断又是非非常特殊殊的一种种中断,与一般般中断有有如下不不同:CPU检测中断断的时间间不同对一般中中断信号号,CPU是在一条条指令执执行完后后检测其其是否存存在,检检测时间间以一个指指令周期期为间隔隔。而对缺页中断断信号,CPU是在一条条指令执执行期间间,只要要有中断断信息就就可检测测,不需需要等待待
11、一个指指令周期期。因此此,CPU检测缺页页中断更更及时。CPU可以多次次处理如果在一一个指令令周期中中多次检检测到缺缺页中断断,CPU都会及时时处理。由于缺页页中断的的独特性性,缺页页中断的的处理过过程需要由硬硬件和软软件共同同完成。硬件寄存存器主要用于于保护缺缺页时CPU未完成指指令状态态和恢复复原指令令的执行行。软件为实现缺缺页中断断的相应应算法程程序缺页中断处理理流程图图请求分页页存储管管理虚拟存储储器管理理不可能能在程序序执行前前将所有有的程序序页面放放入内存存,因此此,在程程序执行行过程中中需要逐逐步将程程序页面面调入内内存。这这样,在在程序运运行过程程中完成成逻辑地址址到内存存物理
12、地地址的变变换,是是动态重重定位装装入。请求分页页存储管管理具有快表的请请求分页页虚拟存存储地址址变换机机构请求分页页存储管管理地址变换换机构请求分页页存储管管理当进程被被调度时时,操作作系统将将进程PCB中的页表表起始地地址和长长度装入入页表寄寄存器中中。CPU从逻辑地地址中取取得页号号,根据据页号查询快表表,如果快表表中有该该页面的的内存块块号,则将内内存块号号与页内内偏移一一起作为为该页在在内存的的物理地地址;如果快表表中没有有该页面面的内存存块号,CPU从页表寄寄存器得得到页表表在内存存中的起起始地址址,查询页表表,得到该该页的内内存块号号,则将将该块号号与页内内偏移一一起作为为该页在
13、在内存中中的物理理地址,同时将将该页的的页号和和内存块块号写入入快表,以备下下次查询询时使用用。如果查询询页表而而没有得得到该页页的内存存块号,即表示示该页不不在内存存,产生一缺缺页中断断信号,请求操操作系统统将该页页面调入入内存。请求分页页存储管管理在页面调调入过程程中,如如果进程程空间没没有空余余的页框框,则系系统需要要调出一一个页面面后再将将该页面面调入内内存,同同时系统统修改页页表。请求分页页的虚拟拟存储器器管理采采用请求求页面调调入方式式,其实实现需要要硬件支支持,增增加了机机器成本本和系统统开销。用于地址址变换和和各种数数据结构构的存储储开销、执行地地址变换换指令的的时间开开销、内
14、内存与外外存之间间对换页页面的I/O开销等与单纯的的分页存存储管理理相比,虚拟存存储器管管理是以牺牲系系统开销销为代价价,换取取内存的的逻辑扩扩充,换取系系统运行行程序的的增大和和吞吐量量的提高高。请求分页页存储管管理请求分页页的硬件件支持完完成了分分页虚拟拟存储器器管理中中的地址址变换,但是,在实施施分页虚虚拟存储储器管理理中需要要解决如如下的策策略问题题:调页策略略调页策略略用于决决定何时时将进程程所需要要的页面面调入到到内存分配策略略分配策略略决定系系统应该该给一个个进程分分配多少少内存中中的物理理块,进进程才能能运行。内存置换换策略内存置换换策略用用于决定定内存中中的哪些些页面被被换出
15、内内存。请求分页页存储管管理在虚拟存存储器管管理中,有两种种调页策策略:请请求页(demandpaging)调入和和预先页页(prepaging)调入:请求页调调入请求页调调入是在CPU需要访问问进程页页面时,所访访问的进进程页面面不在内内存,则则CPU发出缺页页中断,请求将将页面调调入内存存。操作作系统接接收到缺缺页中断断请求后后,分配配内存页页框并完完成从外外存调入入页面优点:只有在需需要时才才将页面面调入内内存,节节省了内内存空间间。请求分页页存储管管理缺点:在进程初初次执行行时,开开始会有有大部分分的页面面调入内内存,这这时的进进程切换换开销很很大。如果发生生缺页时时系统调调入页面面,
16、而每每次又仅仅调入一一个页面面,则启启动磁盘盘作I/O的频率很很高。由由于每次次启动磁磁盘时会会产生一一个时间间延迟,因此,会造成成系统用用于I/O的时间增增长,系系统效率率降低。对于执行行顺序跳跳跃性大大的程序序,缺页页情况变变化大,难以趋趋向稳定定的水平平,从而而引起系系统不稳稳定。请求分页页存储管管理预先页调调入预先页调调入由操操作系统统根据某某种算法法,预先先动态估估计进程程可能要要访问的的页面,并在处处理器需需要访问问页面之之前先将将页面预预先调入入内存优点一次可将将多个页页面调入入内存,减少了了缺页中中断的次次数和I/O操作次数数,系统统付出的的开销减减少。如如果预先先动态估估计准
17、确确率高,该调入入策略会会大大提提高系统统效率。缺点:如果预先先动态估估计准确确率较低低,调入入的页面面不被使使用的可可能性大大,系统统效率较较低如果程序序员不能能预先提提供所需需程序部部分的信信息,则则该调度度策略难难以实施施。请求分页页存储管管理物理块的的分配策策略:为了合理理和有效效分配内内存,内内存物理理块可以以按照进进程平均分配配法、进进程按比比例分配配法和进进程优先先权分配配法进行分配配。进程平均均分配法法在内存物物理块的的分配上上,早期期采用的的是各进进程机会会均等进进行分配配的方法法,即进进程平均均分配法法。进程按比比例分配配法:根据进程程的大小小,进程程按比例例分配法法为按照
18、照比例分分配内存存物理块块数。如如果系统统中有m个内存物物理块,n个并发进进程,每每个进程程的页面面数为si,则系统统中每个个进程能能够分得得的内存存物理块块数为:内存物理理块数也应该该取整数。例如,如果内内存能够够提供62个内存物物理块,并发进进程有P1(有10个页面)和P2(有127个页面),则进进程P1和P2分配到的的内存物物理块分分别为:请求分页页存储管管理请求分页页存储管管理进程优先先权分配配法对于在系系统中所所处地位位重要、时间要要求紧迫迫的进程程,系统统应该考考虑给其其分配较较多的内内存空间间,使其其加速完完成。在在实际应应用中,将按比例分分配法和和进程优优先级结结合起来考虑虑,
19、系统统把内存存中可以以分配的的物理块块分为两两部分,一部分分按照比比例分配配给各并并发进程程,另一一部分根根据进程程的优先先权进行行适当增增加。对内存物物理块分分配还要考虑虑系统的的多道度度情况。如果随随着系统统运行,多道度度增加了了,则每每个进程程需要释释放出一一些内存存物理块块给新进进程;相相反,如如果多道道度减少少了,则则将回收收的内存存物理块块再分配配给剩余余进程。请求分页页存储管管理进程的最最小物理理块数不管给进进程分配配多少物物理块,首要条条件是保证进程程的正常常运行。因此,在内存存物理块块分配中中有一个个基本的的界限,即最小小物理块块数。最最小物理理块数是是保证进进程正常常运行所
20、所需要的的最小内内存块数数进程需要要的最小小物理块块数与计计算机的的硬件结结构有关关,取决决于计算算机的指指令格式式、功能能和寻址址方式。如果计算算机采用用单地址指指令的直直接寻址址方式,则只需需要用于于存放指指令的页页面和存存放数据据的页面面,最小小物理块块数为2;如果采用间接接寻址方方式,则至少少需要3个物理块块。对于于功能较较强大的的计算机机,指令令长度可可能会超超过多个个字节,指令本本身需要要跨过多多个页面面,则物物理块的的最小需需要数会会更大。请求分页页存储管管理内存置换换策略当需要运运行的页页面不在在内存时时,系统统需要将将其从外外存调入入内存。但是如如果内存存没有空空闲空间间提供
21、时时,则系系统需要要先从内内存中选选择页面面换出内内存后,再将需需要的页页面换入入内存。选择被被换出的的页面有有两种类类型:全局置换换和局部部置换。请求分页页存储管管理可变分配配全局置置换最容易实实现的物物理块分分配和置置换策略略。首先为系系统中的的每个进进程分配配一定数数目的物物理块,OS系统自身身也保持持一个空空闲物理理块队列列。如果有页页面需要要换入内内存时,则系统统首先考考虑从空空闲物理理块队列列中分配配,其次次考虑从从所有的的进程中中选择合合适的页页面换出出内存。请求分页页存储管管理固定分配配局部置置换根据进程程类型,或程序序员的建建议,为为每个进进程分配配一定数数目的物物理块,在整
22、个个运行期期间不再再改变。当进程有有页面需需要换入入到内存存时,只只能从当前需需要页面面的进程程中选择择页面换换出到外外存,该置换换方法对对其它进进程没有有影响,每个进进程在内内存中分分得的内内存物理理块数不不变。局限在于于为每个个进程分分配多少少个物理理块难以以确定。请求分页页存储管管理可变分配配局部置置换根据进程程类型,或程序序员的建建议,开开始为每每个进程程分配一一定数目目的物理理块。当进程有有页面需需要换入入到内存存时,只只能从当当前需要要页面的的进程中中选择页页面换出出到外存存,该置置换方法法对其它它进程没没有影响响。进程运行行中频繁繁发生缺缺页,系系统再为为该进程程分配若若干附加加
23、的物理理块,直至其其缺页率率减少到到适当程程度为止止。页面置换换虚拟存储储管理的的一个设设计问题题是:需要一个个空闲页页面时选选择哪个个页面来来进行替替换目标:减减少缺页页中断的的次数,即减少少缺页率举例:如如果一个个进程或或一个作作业在运运行中成成功的访访问次数数为S,即所访访问的页页面在内内存中;不成功功的访问问次数为为F,即访问问的页面面需要缺缺页中断断并且需需要调入入内存;运行需需要访问问的页面面的总次次数为A:A=S+F则缺页率率f为:f=F/A进程的内存物物理块数数进程分得得的内存存物理块块数越多多,缺页页率越低低。页面大小小划分的页页面越大大,缺页页率越低低。程序的局局部性如果编
24、制制的程序序局部性性好,则则缺页率率低。页面置换换算法如果选取取的置换换算法优优,则缺缺页率低低。影响缺页页率的因因素置换算法法最佳置换换算法FIFO (firstinfirstout)先进先出出页面置置换算法法LRU(least recently used)置换算法法时钟更换换工作集法法最佳置换换最佳置换换算法:选择一个个随后最最长时间间不会被被访问的的页面进进行替换换最长时间间不被使使用的页页产生缺页页中断的的次数最最小要具备预预知未来来的能力力预测未来来很困难难举例:假假如某进进程的页页面号引引用串为为:6 012 030 523 032 120 116 01,系统为为进程分分配三个个内
25、存物物理块。如下图所所示。最最佳页面面置换算算法缺页页6次,缺页页率为6/21。最佳页面置换换算法最佳置换换FIFO页面置换换更换最早早进入内内存的页页面维护一个个所有页页面的链链表按照它们们进入内内存的次次序替换链表表头部的的页面缺点:可可能出现现最先加加载进来来的页面面是经常常被访问问的页面面,这样样做很可可能造成成常被访访问的页页面替换换到磁盘盘上,导导致很快快就需要要再次发发生缺页页中断假如某进进程的页页面号引引用串为为:6 012 030 523 032 120 116 01,系统为为进程分分配三个个内存物物理块。FIFO页面置换换FIFO页面置换换算法最近最久久未使用用(LRU)置
26、换算算法LRU代表最近近使用最最少使用过去去的数据据预测未未来时空局域域性如果一个个页面长长时间没没有被使使用过可能以后后的一段段时间也也用不到到最近最久久未使用用LRU置换算法法LRU接近于OPT基本思想想是替换换一个旧旧页面不需要最最旧的页页面最近最久久未使用用LRU置换算法法举例:在在LRU置换算法法中引用用串为:6 012 030 523 032 120 116 01,为进程程分配三三个内存存物理块块。置换换过程如如下图所所示。缺页9次,缺页页率为9/21。LRU页面置换换算法最近最久久未使用用LRU置换算法法使用一个个页面链链表最近被使使用的页页面在链链表头,最近未被被使用的的在链表
27、表尾每次页面面访问时时更新这这个链表表在每一个个页表项项中使用用计数器器选择具有有最小计计数器值值的页面面周期性的的将计数数器清零零使用矩阵阵实现LRU另一个选选择是使使用nn矩阵这里n是虚拟空空间中的的页面数数开始矩阵阵被设置置为0当页面k被访问:将k行全部设设置为1,k列全部设设置为0需要替换换页面时时选择矩阵阵里对应应行值最最小的页页面更换换即可使用矩阵阵实现LRU页面访问问顺序:0,1,2,3,2,1,0,3,2,30000000000001110Page0 1 2 301230000000011011100Page0 1 2 30000101110011000Page0 1 2 30
28、111001100010000Page0 1 2 30011101100010000Page0 1 2 3000110011101000001230000100011001110011100000100011000111011000000100111001100000010使用移位位寄存器器实现LRU给每个存存放在内内存的页页面配备备一个移移位寄存存器移位寄存存器的初初始值设设为0在每一个个规定长长度的时时钟周期期:将移位寄寄存器的的值向右右移动一一位并将对应应页面的的访问位位的值加加到该移移位寄存存器的最最左位上上当需要寻寻找一个个页面进进行更换换时选择对应应移位寄寄存器值值最小的的页面即即
29、可使用移位位寄存器器实现LRU时钟算法法为每个常常驻页维维护访问问位页面被访访问过后后访问位位自动设设置访问位可可以被操操作系统统清零常驻页面面被组织织到时钟钟循环中中针臂指向向其中的的一个页页面时钟算法法查找一个个要替换换的页面面时:查看正在在被针臂臂指向的的页面访问位=0:较长时间间内没有有被访问问(自从上次次轮询),置换该该页访问位=1:自从上次次轮询后后页面被被访问过过,重新新置0,暂不换换出时钟算法法除考虑页页面访问问情况外外,还须须考虑置置换代价价,即修修改位A:访问位位;M:修改位位改进型时时钟算法法工作集算算法工作集是是:最近的k次访问均均涉及到到的页面面集合在最近的的T秒或者
30、T次中的所所有页面面w(k,t)表示在时时间t时k次访问所所涉及的的页面数数量工作集算算法工作集与与最近访访问次数数的关系系k(最近访问问次数)工作集算算法100311086120110203011680119981200912008011851最后使用时间访问位R页表当前时间间:2220按下面方方式扫描描所有页页面:If(R=1)将最后使使用时间间设置为为当前时时间继续扫描,并并将访问问位清零零if(R=0&ageT)替换此页页面工作集时时钟算法法将工作集集算法和和时钟算算法结合合起来将内存里里的页面面组织到到时钟圈圈里每个页面面有一个个最近访访问时间间和访问问位需要更换换页面时时:从针臂指
31、指向的页页面开始始考察在工作集集之外的的访问位位为0的第一个个页面被被替换虚拟存储储器管理理以进程程运行的的时间增增长为代代价换来来系统更更多的虚虚拟内存存,是否否值得付付出这样样的代价价则需要要从缺页率、页面大大小等方面对对系统性性能的影影响进行行分析。页面调度度性能1缺页率率对系统统性能的的影响用p表示缺页页率,如如果p=0,则不缺缺页;如如果p=1,则始终终缺页。抖动:由由于缺页页而引起起的一种种系统现现象,即即处理器器频繁地地处理页页面的换换出和调调入,使使得处理理器实际际处理程程序的能能力大大大减小。“抖动动”现象象常在缺缺页率非非常高时时发生。用st表示缺页页处理时时间。缺缺页处理
32、理时间包包括从外外存取相相关页面面并将其其放入内内存的时时间。用ma表示对内内存一个个页面的的访问时时间。用vt表示有效效访问时时间。在非缺页页的情况况下,vt=ma在缺页率率为p的情况下下,vt=(1p)ma+pst 页面调度度对系统统性能的的影响分分析在任何情情况下,缺页处处理时间间由下面面三个主主要部分分构成:(1)缺页中中断服务务时间;(2)读页面面时间;(3)恢复进进程时间间。通过精简简指令而而减少缺缺页中断断服务和和恢复进进程所花花费的时时间,使使它们位位于1ms-100ms之间。 页面调度度对系统统性能的的影响分分析在实际应应用中,缺页不只只使得缺缺页的进进程运行行减慢,还会影影
33、响其他他进程的的运行。如果一一个进程程队列阻阻塞等待待某个设设备,而而该设备备正用于于一个缺缺页的进进程,则则等待设设备的进进程会等等待更长长的时间间才能得得到请求求的设备备。可见,缺缺页不只只使得缺缺页进程程本身的的运行减减慢,还还使得整整个系统统的运行行效率降降低,系系统性能能下降。因此,在分配进程程物理块块和选择择置换算算法上,需要周周全考虑虑。页面调度度对系统统性能的的影响分分析2对换空空间处理理对系统统性能的的影响访问磁盘盘上对换换空间的的速度比比访问磁磁盘上文文件系统统更快。因为对对换空间间比文件件系统分分配的磁盘块更更大,同时又又不需要文文件查询询和间接分配配。这样,系统可可以采
34、用用在进程程开始时时将整个个文件映映像拷贝贝到对换换区,然然后再从从对换区区完成调调入页面面的方法法。页面面换入时时,直接接从对换换区调入入。页面面换出时时,如果果被修改改过,则则需要写写入对换换区;否否则不需需要写入入对换区区。因此此,利用用硬盘上上的对换换空间,加快对对换空间间的访问问速度,可加快快进程页页面的调调入与调调出,减减少页面面置换时时间,提提高系统统性能。页面调度度对系统统性能的的影响分分析3页面大大小对系系统性能能的影响响页面大小小对性能能的影响响可以从从以下几几个方面面分析。页表由于每个个作业运运行时,页表都都需要存存放在内内存,如如果页面面大,则则页表会会更小,页表占占用
35、的内内存小。从磁盘读读写页面面次数除内存外外,页面面也需要要存放在在磁盘上上。如果果页面大大,则系系统从磁磁盘上读读入页面面到内存存的次数数少,有有利于提提高I/O的效率。页面调度度对系统统性能的的影响分分析页内碎片片在分页的的情况下下,如果果页面小小,则作作业的内内存碎片片少。在不考虑磁磁盘读写写页面对对页面大大小的影影响,只只考虑页页表和作作业占用用的内存存碎片情情况下,理论上上可以求求得最佳佳页面大大小。如如果用A表示用户户作业的的平均长长度(单单位为字字节),L为页面长长度(单单位为字字节),n为页表项项所需要要的字节节数,每每个作业业的页表表占用的的字节数数为nA/L。假定作作业的平
36、平均碎片片为L/2,则内存存附加的的开销为为:K=nA/L+L/2对该公式式求极小小值,即即对L求一阶导导数,得得到:页面调度度对系统统性能的的影响分分析为最佳页页面长度度。通常情况况下,页页表项所所需要的的字节数数为常数数,如为为8或4,页面大大小L与用户作作业的平平均长度度成非线线性增长长关系。如果系系统运行行的作业业较长,则页面面会较大大。但是,通通常意义义下,页页面的基基本大小小由计算算机处理理器决定定。如IBM370系列的页页面大小小为2048B或4096B,IBM400的页面大大小为512B,Motorola68040的页面大大小为4096B,Pentium的页面大大小为4096B
37、。页面调度度对系统统性能的的影响分分析4编制程程序对缺缺页率的的影响在程序编编制过程程中,程程序员应应该注意意程序的的局部性性。程序序编制方方法不同同,产生生缺页率率的不同同,对系系统性能能的影响响也不同同。如果程序序员在编编程时考考虑了可可能引起起的缺页页中断,并使系系统运行行时尽量量少地产产生缺页页中断,则会提提高系统统的性能能。页面调度度对系统统性能的的影响分分析请求分段段存储管管理方式式将用户程程序的所所有段首首先放在在外存中中,当用用户程序序被执行行时,系系统再逐逐步从外外存调入入所需要要的段进进入内存存。请求分段段的硬件件支持段表机制制缺段中断断机制地址变换换机构请求分段段存储管管
38、理方式式段表机制制段名段段长长段段基址存存取取方式访访问问字段A修改位M存在位P增补位外外存存地址存取方式式:标识识段存取取属性访问字段段:段是是否被访访问修改位:段进入入内存后后是否被被修改过过存在位:段是否否在内存存增补位:请求分段段系统的的特有字字段,标识在在运行过过程中是是否有过过动态增增长外存地址址:段在在外存的的起始地地址请求分段段存储管管理方式式缺段中断断机构请求分段段存储管管理方式式地址变化化机构否否否是是是请求分段段存储管管理方式式分段的共共享和保保护共享段表表共享进程程计数存取控制制字段段号:不不同的进进程可以以使用不不同的段段号去共共享段段名段长内存地址状态外存地址共享进
39、程计数状态进程名进程号段号存取控制请求分段段存储管管理方式式分段的共共享和保保护共享段的的分配与与回收分配:第第一一次访问问:分配配内存,(1)增加共共享段表表;(2)修改进进程段表表。第二二次访问问:(1)修改共共享段表表;(2)修改进进程段表表。回收:(1)count=0(2)count0请求分段段存储管管理方式式分段的共共享和保保护分段保护护越界检查查:段号号越界检检查;段段内偏移移越界检检查。存取控制制检查:R;R/W;E环保护机机构(1)内环可可访问外外环数据据;(2)外环可可请求内内环服务务。Windows 2000/XP运行在IntelPentium CPU硬件平台台。下面面介绍
40、IntelPentium的工作模模式。IntelPentium CPU提供三种种工作模模式:实地址址模式(real mode)、虚地地址模式式(又称称为保护护模式,protection mode)和虚拟拟模式(virtual mode)。实地址模模式采用段式式存储器器管理或或单一连连续存储储器管理理,不启启用分页页机制,只能寻寻址1MB地址空间间。DOS操作系统统采用这这种模式式。虚地址模模式采用三种种内存管管理方式式:段式式虚拟存存储器管管理、页页式虚拟拟存储器器管理和和段页式式虚拟存存储器管管理。Linux和Windows操作系统统采用这这种模式式。虚拟模式式是在保护护方式下下的实地地址模
41、式式的仿真真。Windows 2000/XP系统存储储器管理理实例Window2000/XP采用请求页式式虚拟存存储管理理,提供32位的虚拟拟地址,为每一一个进程程提供一一个受保保护的4G虚拟地址址空间。虚拟地地址空间间布局为为低2G的地址空空间为用户程序序区,高2G的地址空空间为操作系统统区,如图所所示。Windows系统虚拟拟存储器器地址布布局基于分页页管理的的Windows2000/XP系统区又又分为固固定页面面区、页页交换区区和操作作系统驻驻留区。固定页面面区中存存放关键键的系统统代码,页面不不可与外外存对换换;页交换区区存放非非常驻系系统代码码和数据据,可以以与外存存进行页页面对换换
42、;操作系统统驻留区区存放操操作系统统内核、执行体体和引导导驱动程程序以及及硬件抽抽象代码码层,非非常重要要永不失失效,为为了加快快运行速速度,这这一区的的寻址由由硬件直直接映射射。另外,在在操作系系统引导导时,也也可以选选择另一一种地址址分配方方式:3GB用户程序序区和1GB操作系统统区。这这种情况况主要用用于运行行大的用用户程序序。基于分页页管理的的Windows2000/XP1页表在Windows 2000/XP系统中的的页表如如下图所所示。Windows 2000/XP系统中的的页表基于分页页管理的的Windows2000/XP2逻辑地地址到物物理地址址的变换换在Windows 2000
43、/XP系统中的的32位逻辑地地址被划划分为:页表目录录索引、页表页页索引和和页面。其中页页表目录录索引占占10位,页表表页索引引占10位,页面面占12位。页表机制制为2级页表,页面大大小为4K。分页管管理中采采用了二二级页表表结构实实现进程程的逻辑辑地址到到物理地地址的变变换,如如下图所所示。基于分页页管理的的Windows2000/XPWindows系统的二级页表结构 物理块号 块内偏移第一级页表页表目录逻辑地址 31 22 21 12 11 0页表目录索引 页表页索引 页面第二级页表页表物理地址基于分页页管理的的Windows2000/XP页目录用用来指向向进程页页表地址址。每个个进程都都拥有自自己的页页目录。在地址变变换时,操作系系统从运运行进程程的进程程控制块块中得到到进程页目目录的起起始地址址,并将该该地址放放入页目目录寄存存器中。通过页页目录寄寄存器寻寻址到页页目录。页目录的的目录项项中包含含有进程程所有页页表的位位置和状状态,即即通过页页目录得得到页表表。由于页表表占用10位地址,故最多多有1024张页表。每张页页表最长长可以达达到1024个页表项项,指向向1024
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 延安大学《美国文学》2023-2024学年第一学期期末试卷
- 加强品牌建设的实施方案计划
- 许昌学院《中国民族民间舞》2021-2022学年第一学期期末试卷
- 四年级数学(四则混合运算)计算题专项练习与答案汇编
- 一年级数学(上)计算题专项练习集锦
- 物流人员劳动合同三篇
- 徐州工程学院《数字媒体艺术赏析》2023-2024学年第一学期期末试卷
- 重要场所安防措施落实计划
- 盐类运输合同三篇
- 秘书工作计划的关键要素
- 中医养生学课件
- 三D打印公开课
- 考古发现与中国文化智慧树知到期末考试答案2024年
- 2024年江苏省徐州市中考一模化学试题
- 建设工程施工现场远程视频监控系统建设应用标准
- 日咖夜酒潮玩新生生活节
- 小班数学《开火车》课件
- 银行保安服务整体服务设想及策划
- 六年级百分数乘法计算专题练习题100道(家长老师必备-直接打印使用)
- 教育部家庭教育指导手册
- 2024年反电诈知识培训考试题库(附答案)
评论
0/150
提交评论