实验四+页面置换算法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
页面置换算法模拟实验 【实验目的】 1)进一步掌握虚拟存储器的工作原理。 2)通过实验理解和掌握FIFO,LRU,OPT三种页面置换算法。 3)比较各种页面置换算法的优缺点。 【实验要求】 1)认真阅读和掌握预备知识。 2)上机操作。 【预备知识】 在采用请求分页机制的操作系统中,当运行一个进程的时侯,若所要访问的页面不在内存中而需要把它们调入内存,但此时内存已无空闲空间,为了保证该进程能正常运行,需选择内存中暂时不用的一个页面调出到磁盘交换区。选择调出哪个页面,由页面置换算法决定。 页面置换算法的好坏,直接影响着系统的性能。一个好的页面置换算法,应尽可能选择调出较长时间内不会再访问的页面,以保证较低的缺页率。常见的页面置换算法有OPT(最佳置换算法),FIFO(先进先出算法)及LRU(最近最久未使用算法)。 一、OPT算法 1.原理简述 1)在分配内存页面数(B)小于进程页面数(P)时,最先用到的B个页面依次放入内存; 2)这时若需要处理新的页面,而当前分配的内存页面全部不空闲时,选择换出以后永远不再使用的页。如没有这样的页面存在,则应选择下次访问距离现在最久的页换出,以空出内存来放置新调入的页面; 3)以后如果有新页面需要调入,按“2)”之规则进行。 该算法能保证有最低的缺页率,所以称为最佳置换算法。但是该算法仅仅是一种理想状况下的算法,因为在进程实际运行过程中,将来会执行到哪个页是不可预知的,所以无法选择该置换哪个页出去。因此,本算法在实际中无法使用,只能作为一种标准来衡量其他算法的性能。 2.图表描述 假设某个进程在交换区被分为5个页面(P=5),分别以1,2,3,4,5表示。在该进程运行过程中,处理机调用它们的顺序即页地址流为: 2,3,2,1,5,2,4,5,3,2,5,2 而系统分配给该进程的内存空间只有3(B=3)个页面,那么在使用OPT算法时,这3个页面的内存使用情况应该是: 引用串 2 3 2 1 5 2 4 5 3 2 5 2 2 2 2 2 2 2 4 4 4 2 2 2 3 3 3 3 3 3 3 3 3 3 3 1 5 5 5 5 5 5 5 5 缺页标记 ( f) (f) ( ) (f) (f) ( ) (f) ( ) ( ) (f) ( ) ( ) 本例共缺页6次,缺页率为6/12。 二、FIFO算法 1.原理简述 1)在分配内存页面数(B)小于进程页面数(P)时,最先用到的B个页面依次放入内存; 2)这时若需要处理新的页面,则从当前内存中的B个页面中选择调出最先进入的那个页(所以称为FIFO),然后放入新页面; 3)以后如果有新页面需要调入,按“2)”之规则进行。 该算法将所使用的内存页面构成一个循环队列,每次置换时将队列中的队首换出,队首指针后移一位即可,算法容易实现。但是最先进入内存的页未必将来就不再用到,甚至可能很快就会用到,所以不能保证有较低的缺页率,算法性能较差。 2.图表描述 为了便于比较学习,例子和前面的一样。在使用FIFO算法时,这3个页面的内存使用情况应该是: 引用串 2 3 2 1 5 2 4 5 3 2 5 2 2 2 2 2 5 5 5 5 3 3 3 3 3 3 3 3 2 2 2 2 2 5 5 1 1 1 4 4 4 4 4 2 缺页标记 (f) (f) ( ) (f) (f) (f) (f) ( ) (f) ( ) (f) ( f) 本例共缺页9次,缺页率为9/12。 三、LRU算法 1.原理简述 1)在分配内存页面数(B)小于进程页面数(P)时,最先用到的B个页面依次放入内存; 2)这时若需要处理新的页面,而当前分配的内存页面全部不空闲时,选择调出其中最长时间没有用到的那个页面,用空出的内存来放置新调入的页面,所以称为LRU(最近最久未使用)算法; 3)以后如果有新页面需要调入,按“2)”之规则进行。 该算法根据局部性原理,认为最近一段时间内,最长时间没有用到的那个页将来用到的可能性也很小,所以替换这样的页出去,也能保证比较低的缺页率,其性能接近OPT算法。但是需要有专门的存储单元来记录每个页面有多久未被使用,并且要随时更新该记录,所以算法的开销比较大。 2.图表描述: 为了便于比较学习,例子和前面的一样。在使用FIFO算法时,这3个页面的内存使用情况应该是: 引用串 2 3 2 1 5 2 4 5 3 2 5 2 2 2 2 2 2 2 2 2 3 3 3 3 3 3 3 5 5 5 5 5 5 5 5 1 1 1 4 4 4 2 2 2 缺页标记 ( f) (f) ( ) (f) (f) ( ) (f) ( ) (f) (f) ( ) ( ) 本例共缺页7次,缺页率为7/12。 【实验内容】 1)编译opt.c,实现OPT置换算法。(源程序已

文档评论(0)

专注于电脑软件的下载与安装,各种疑难问题的解决,office办公软件的咨询,文档格式转换,音视频下载等等,欢迎各位咨询!

1亿VIP精品文档

相关文档