[教育]第6章 虚拟存储器.ppt

  1. 1、本文档共123页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[教育]第6章 虚拟存储器

全局范围技术 全局范围技术采用时钟置换算法,用一个计数器C记录有哪些信誉好的足球投注网站指针扫描页面缓冲的速度。 若C的值大于给定的上限值,说明缺页率太高(可能抖动)或找不到可供置换的页面,这时应减少程序道数。 若C小于给定的下限值,表明缺页率小或存在较多可供置换的页面,这时应增加程序的道数。 L=S准则 实际证明,产生缺页的平均时间L等于系统处理缺页的平均时间S时,CPU的利用率达到最大。 当LS时,表明系统频繁缺页,CPU利用率低,会导致系统抖动。 利用缺页率发现抖动 下图是缺页率与进程分得物理块数之间的关系。当缺页率超过上限时会引起抖动,因此应增加分配给进程的物理块;此时每增加一个物理块,其缺页率明显降低;当进程缺页率达到下限值时,物理块的进一步增加对进程缺页率的影响不大。 缺页率 物理块 上限 下限 缺页率算法 缺页率算法是一种直接的控制抖动方法。该方法要求为每页设一个使用位,当该页被访问时,相应位置1。同时设计一个计数器,记录自上次进程产生缺页以来进程执行的时间。 方法1:设置一个阈值F,如最近两次缺页时间间隔小于F,则分配一个物理块给该进程;否则淘汰使用位为0的页,并减少该进程的物理块数,同时将该进程的剩余页使用位重置为0。 缺页率算法(续) 方法2:设置两个阈值,当缺页率达到上限值时为进程增加物理块,当缺页率达到下限值时减少进程的物理块。 缺页率算法的缺点:当进程由一个局部转移到另一个局部时,在原局部中的页面未移出内存之前,连续的缺页会导致该进程在内存的页面迅速增加,产生对内存请求的高峰。 平均缺页频率 设ti为两次缺页之间的间隔时间,fi为其缺页频率,则有: fi= 1/ti 设F为平均缺页频率,则有: F=( f1+f2+…+fn)/n 当F大于系统中规定的允许缺页频率时,则说明系统中缺页率过高,有可能引起抖动。 抖动的预防及解除 采用局部置换策略可以防止抖动传播 利用工作计模型防止抖动:给进程分配工作集所需的物理块。 挂起进程来解决抖动。 选择挂起进程的条件 优先级最低:符合进程调度原则 发生缺页中断的进程:内存不含工作集,缺页时应阻塞 最后被激活的进程:工作集可能不在内存 最大的进程:可释放较多空间 程序结构对缺页率影响例 设页面大小为128字节,二维数组为128×128,初始时未装入数据,需将数组初始化为0。若数组按行存放,问下述两个程序段的缺页率各为多少? 程序1 程序2 short int a[128][128]; for (j=0;j=127;j++) for (i=0;i=127;i++) for (i=0;i=127;i++) for (j=0;j=127;j++) a[i][j]=0; a[i][j]=0; 程序1的缺页次数 因数组以行为主存放,页面大小为128字节,故每行占一个页面。 程序1的内层循环将每行中的指定列置为0,故产生128次中断。 外层循环128次,总缺页次数为128×128。 程序1 short int a[128][128]; for (j=0;j=127;j++) for (i=0;i=127;i++) a[i][j]=0; 程序2的缺页次数 因数组以行为主存放,页面大小为128字节,故每行占一个页面。 程序2的内层循环将每行的所有列置为0,故产生1次中断。 外层循环128次,总缺页次数为128。 程序2 short int a[128][128]; for (i=0;i=127;i++) for (j=0;j=127;j++) a[i][j]=0; 缺页率对有效访问时间的影响 有效访问时间是指访问存储器所需时间的平均值。 假设使用了快表,则CPU访问内存时有以下三种情况: 页面在内存且页表项在快表中:只需一次访问内存 页面在内存但页表项不在快表中:需两次访问内存 页面不在内存:缺页中断时间 缺页中断处理时间 缺页中断处理时间由三部分组成: 缺页中断服务时间 页面传送时间:包括读缺页和写置换页的时间 进程重新执行时间 由于缺页中断服务时间及进程重新执行时间较短,这里仅考虑页面传送时间。 有效访问时间 设内存读写周期为m,缺页中断服务时间为t,快表命中率为p,缺页中断率为f,则有效访问时间为: EAT=p×m+(1-p-f)×2m+f×t 设p=0.8,m=100ns,t=10ms,则: EAT=0.8×0.1+(1-0.8-f)×2×0.1+f×10×1000 =0.12+9999.8f(μs) 若f为0.001,则EAT为10.1198微秒,是没有缺页时间(0

文档评论(0)

qiwqpu54 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档