ch4-4.5虚拟存储管理.ppt_第1页
ch4-4.5虚拟存储管理.ppt_第2页
ch4-4.5虚拟存储管理.ppt_第3页
ch4-4.5虚拟存储管理.ppt_第4页
ch4-4.5虚拟存储管理.ppt_第5页
已阅读5页,还剩65页未读 继续免费阅读

下载本文档

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

文档简介

1、4.5虚拟存储管理,4.5.1虚拟存储管理的概念4.5.2请求分页虚拟存储管理4.5.3请求分区虚拟存储管理4.5.4请求段页虚拟存储管理,4.5.1虚拟存储管理的概念,为什么要引入虚拟存储实现虚拟存储的基本思路。虚拟存储的定义:具有分层存储的电脑系统使用自动部分加载和部分更换功能,为用户提供比物理主内存大得多的可寻址“主存储”。虚拟存储的概念图、程序的本地原则,即程序在执行过程中短时间运行的命令地址或操作对象地址,分别限制在特定存储区域。可以细分时间局部性和空间局部性。实施虚拟存储需要解决的问题,主内存辅助内存集成管理问题,逻辑地址到物理地址的转换问题,以及部分装载和部分更换问题。虚拟存储管

2、理实施技术,请求页虚拟存储管理请求段虚拟存储管理请求段页虚拟存储管理,4.5.2页虚拟存储系统,第一页虚拟存储系统的硬件支持,(1)基本存储管理单元MMU完成将逻辑地址解析为物理地址的功能,以接受虚拟地址作为输入并将物理地址直接发送到总线,寻呼虚拟存储系统的硬件支持,(2),MMU主要功能,(3)速记表TLB管理。(4)访问页面表。(5)发出缺失页中断或超额中断,并将控制权移交给内核存储管理处理。(6)设置和检查页面表中的每个要素位。请求双页面虚拟存储系统的基本原则。分页虚拟内存不将所有操作信息(节目和数据)加载到主内存中,只加载立即使用的页面,在运行过程中访问不在主内存中的页面时生成缺失页面

3、中断,然后从磁盘动态加载。如何知道页面不在主内存中?如何处理牙齿情况?使用的方法是扩展页面表的内容,增加持久性标志位和页面辅助地址等信息。页面虚拟存储管理分页表扩展、驻留标志位(也称为中断位)修改位(Renferenced)、请求页虚拟地址转换进程(1)、请求页虚拟地址转换进程(2)不仅有助于提高主内存利用率,还有助于执行多个节目。缺点:必须有硬件支持,进行缺失的中断处理,机器成本增加,系统开销增加。有三页加载策略和页面清除策略,页面加载主内存,两种茄子策略。基于页面的时间表字典曹征时间表,何时将修改过的页面写回辅助存储,以及两种茄子策略。清除基于页面的清除字典3360在替换前成批写入、4页分

4、配战略、将主内存分配给进程时,分配给:牙齿进程的空间变小。如果只有进程的一小部分位于主内存中,即使局部性好,页面中断率也可能相当高。(David assell,Northern Exposure(美国电视电视剧),成功)节目的局部性原则导致流程分配的主内存超出一定限制后,增加主内存空间不会显着降低流程的缺失页面中断率。页面分配策略:固定分配,流程保持页面框数不变。这称为固定分配。创建流程时,流程类型和程序员的要求决定了页面框的数量,如果其中一个缺失页面中断,则会替换流程中的一页。页面分配策略:可变分配,流程中分配的页面框数可变。这称为可变分配。过程执行的步骤之一是页面缺失率高,当前本地化程度差

5、,系统可以进一步划分页面框以减少页面缺失率。相反,如果流程的当前本地性好,可以减少分配给流程的页面框数,页面替换战略:本地替换和全局替换,页面替换算法的范围是整个系统,则可以在执行流程之间动态分配页面框。如果页面替换算法的范围仅限于牙齿流程(称为本地页面替换算法),则实际上必须为每个流程分配固定页面框。将固定指派和本地替代策略结合使用(1),流程中分配的页面框数不变,丢失的页面中断,流程中的页面允许选择页面替代,因此流程中的页面框总数不会更改。战略困难:每个流程需要分配多少个页面框?少给,页面中断率高。减少主内存中可同时运行的进程数,使处理器和其他设备空闲。固定分配和本地替代策略(2)、使用固

6、定分配算法、为流程分配页面框、使用:平均分配、按比例分配和优先级分配。与变量指派和全局替代策略一起使用,首先为每个流程指派特定数量的页面框,OS保留多个可用页面框,在出现缺少流程的页面中断时,从系统可用页面框中选择流程之一。这将逐步增加缺失页面中断进程的主内存空间,有助于减少系统中缺失页面中断的数量。当系统拥有的空闲页面框耗尽时,选择从主内存中删除一页。牙齿页面可以是主内存中所有进程的页面。这将减少该进程的页面框数,并增加缺失页面的中断率。与变量分配和本地替换一起使用。实施要点如下: (1)当新进程加载到主内存中时,根据应用节目类型、节目要求在特定数量的页面框中分配。牙齿分配可以页面或预先调整

7、。(2)如果丢失页面中断,请在“流程驻留”集中选择“替换页面”。(3)经常重新评估流程的分配,增加或减少分配给流程的页面框以提高系统性能。5缺失页面中断率、页面替换页面移除算法“抖动”现象、影响缺失页面中断率的因素(1)、系统分配的主内存块仅为M块(Mn)(假设作业P共N页)。如果作业P在运行过程中成功的访问数为S,失败的访问数为F,则总访问数为:A=S F表示f=F/A,影响缺失页面中断率的因素(2),F称为缺失页面中断率。影响缺失页面中断率F的因素有:(1)主内存帧数。(2)页面大小。(3)页面替代算法。(4)节目特性。6全局页面替代战略,1)最佳页面替代算法OPT 2)先进先出页面替代算

8、法FIFO 3)最近最小页面替代算法LRU 4)第二次机会页面替代算法SCR 5)时钟页面替代算法Clock,1)最佳替代算法OPT,如果需要转至一页并删除上一页,请参阅Belady算法(Belady,2)先进先出页面替换算法FIFO基于程序总是以线性顺序访问物理空间的假设。算法总是删除最初转入主内存的页或主内存中驻留时间最长的页(不包括持久性)。实现技术(1)设置具有M个元素的页码表,将页面更改控制(2)指针链引入队列,3)用最近最少的页面替换算法LRU,删除算法的页面是最近期间内最长时间未访问的页面。根据节目地域性原理,刚刚使用的页面很快就可以重复使用,但长期未使用的页面可能不会立即使用。

9、实施LRU算法:页面丢弃队列(1),将当前主内存中的页码保留在队列中,每次访问一个页面时调整一次,使队列结束始终指向最近访问的页面。队列标头是最近最少使用的页。发生缺失页中断时,丢弃队列头总数表示的页面。执行一次页面访问后,需要将页面从队列调整到队列末尾。实施LRU算法:页面丢弃队列(2),例如,为操作分配了3个主内存,牙齿操作按顺序访问为4,3,0,4,1,1,1,2,3,2。访问牙齿页面时,页面丢弃顺序更改为:实施LRU算法:页面丢弃队列(3),实施LRU算法:标志位方法(最近未使用页面替换算法NRU),在每页上设置引用标志位R。访问页面时,硬件将页面标志位置R位置1,在一段时间内,T将所

10、有页面的标志R整理为0。如果发生缺页中断,请从旗标R牙齿0的页面中选择一页,然后淘汰。选择要淘汰的页面时,将所有页面的徽标位R清除为零。LRU算法实现:柜台方法(最不常用页面替换算法LFU),设置每页多个位计数器。每次访问一页时添加相应的计数器。时间T后所有计数器都牙齿为零。如果发生丢失页面中断,您可以选择最少的相应页面进行销毁,并清除所有计数器。实现LRU算法:为每个页面设置计时器的计时器方法,每次访问页面时,系统的绝对时间都会记录在计时器中。时间T后所有计时器都为零。比较每个页面的计时器值,并选择最小的页面,因为它是最早的未使用页面。4)第二个机会页面替代算法SCR、FIFO算法增强、FI

11、FO与页面表中的“参考位”相结合:查看FIFO的团队主页(第一个进入主内存的页面)。如果“参考位”为零,则牙齿页面已过时,没有用。如果“参考位”为1,则表示提前进入主内存,但最近正在使用。将它的“引用位”清除为零,将牙齿页面移到队尾,将其视为新转入的页面。算法意义:这是最前面的主存储页面,如果最近在使用,像新转入的页面一样,仍然有机会保留在主内存中。(David assell,Northern Exposure(美国电视电视剧),variance(成功),5)时钟页面替换算法Clock(1),算法实施要点(1):页面首次加载到主内存中,“参考位”设置为0,指针移至一步访问主内存中的所有页面时,

12、“引用位”设置为1,指针保持不变。丢弃页面时,从指针当前指向的页面开始扫描循环队列,清除“引用位”为1的页面的“引用位”为零,跳过牙齿页面。淘汰遇到的“引文”为零的页面,再把指针推上一层。时钟页面交换算法(2),算法实施要点(2):扫描循环队列时发生的所有页面的“参考位”为1时,指针蟑螂转动整个循环队列,将遇到的所有页面的“参考位”清除为零。指针停在开始位置,删除牙齿页面,然后再推一步。以时钟页面替换算法为例,将时钟页面替换改进算法(1)、淘汰修改的页面减少、“参考位”和“修改位”相结合,组合4茄子情况。(1)最近未参照和未修改(r=0) M=1) (4)最近参照和修改(r=1,M=1),时钟

13、页面替换改进算法(2),第1步:选择最佳淘汰页面,指针扫描时,“渡边杏参考位更改”使用第一次见面的r=0,m=0页作为淘汰页。步骤2:步骤1牙齿失败后,从原始位置重新开始,查找r=0和m=1的页面,将第一次遇到的页面用作淘汰页面,查找扫描过程中指针所扫页面的“参考位”R位置0。时钟页面更换改进算法(3),步骤3:2失败时,指针返回起始位置。这是因为所有页面的“参考位”R牙齿已经为零。然后转到步骤1,如有必要,再执行步骤2。这次,您可以选择可删除的页面。示例-假定流程中有三个页面框,其中缺少页面中断数和淘汰页面计算(1),使用固定分配策略。运行期间,按以下顺序引用5个单独页面3360 2 3 2

14、 5 2 4 5 3 2 2:,示例-计算缺少的页面中断数和删除的页面(2)2 3 2 1 5 2 3 5 5 5 2 5 2 2 2,示例-计算缺少的页面中断数和删除的页面(3)2 2 1 5 2 2 5 2 2 5 2 5 2 5 2 2 2,示例-计算缺少的页面中断数和删除的页面(4), 性能比较OPT F(1) F(2) F(4) 3次=6 LRU F(3) F(1) F(2) F(4) 3次=7 clock f (2) f 否则,页面将保留在流程的持久性集中,直到再次引用。本地最佳页面替换算法(2),时间t0 1 2 3 4 5 7 8 9 10参考字符串P4 P3 p2 P3 P5

15、 P4 P4 P1 P3 P3 P4 in T P3 p2 P5 P1 P4 out T T P4 p2 P3 P1 P4 out T T P4 p2 P3 P5 P1部分最佳页面替换算法实例(=3),2)工作集模型和工作集“工作集”窗口的大小。实现思路:工作集模型用于模拟本地最佳页面替换算法,而不是向前看页面引用字符串。相反,根据节目本地原则向后查看。在给定时刻,一个进程所剩无几的未来需要的主内存页面框的数量可以通过调查过去一小时的主内存需求来估计。可以将最近访问的工作集页面保留在主内存中。工作集对峙示例(=3),时间t 0 1 2 3 4 6 7 8 9 10参考字符串P1 P3 P4 P3 P3 P5 P3 P3 P5 P1 P4 P1 p2 P3 P4 P5 in t P3 p2 P5 P1 P4 in t P3 p2 P1 P4 out P5 P1 P4 p2,3)模拟工作集对峙算法,老化每小时T向右移动寄存器,并将引用添加到最左侧。例如,时间间隔T设置为1000次内存引用,页面P为时间t 0时寄存器为“1000”,时间t 1000时寄存器为“0100”,时间t 2000时寄存器为“0010”,时间t 3000时寄存器为

温馨提示

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

评论

0/150

提交评论