王道考研操作系统第三章11小题NRU算法问题

(王道考研操作系统第三章11小题NRU算法问题)

题目如下

在这里插入图片描述

此题 采用NRU算法时 王道课本答案与咸鱼学长讲的不一致,
笔者觉得稍有争议,如有错误欢迎指正,勿喷

此题解法一:

  • 1、由于题中指明使用NRU算法,按照课本应为普通CLOCK算法
    两点说明:
    ① NRU即指 普通CLOCK算法,这种算法设有访问位;
    ② 该算法生成的循环队列按装入时间排序,即3>2>0>1; 题目如无特殊说明,刚开始循环扫描指针指向第一个即3号页帧。

按照clock算法扫描从上述循环队列中寻找访问位为0的页帧(同时将访问位为1的置为0),到0页帧时找到访问位为0的页帧,换出即可,所以按照普通CLOCK算法应该换出0页帧。

解法二

  • 2、图表中有访问位和修改位,而在普通CLOCK算法中引入修改位即为改进型CLOCK算法

    按照改进型扫描步骤,第一轮扫描出(0,0)的进行淘汰,即应换出1页帧

最后,笔者觉得采用改进型算法更符合出题人意思(盲猜),其实也不必太纠结用哪种方式,现在考研题出的一般很严谨,大家掌握知识点最重要。

  • 5
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
NRU算法和CLOCK算法都是页面置换算法,用于操作系统中的内存管理。 NRU算法(Not Recently Used)是一种简单和低成本的算法。它将页表中的所有页帧划分为4个类别:类别0表示既未被访问也未被修改、类别1表示未被访问但被修改、类别2表示已被访问但未被修改、类别3表示已被访问且被修改。当需要进行页面置换时,NRU算法选择最低类别的页框进行置换。这种算法不考虑页面的访问时间顺序,只关注是否被访问过和是否被修改过。 CLOCK算法是一种考虑页面访问时间顺序的置换算法。它使用一个环形的页框链表来模拟时钟的运行。每个页框都有一个标志位用于记录页面是否被访问过。算法根据页面的访问时间顺序,向前推进指针,并检查每个页框的标志位。如果标志位是1,则将其置为0;如果是0,则进行页面置换。这样,最早访问的页面会被保留下来,较晚访问的页面有可能被置换出去。 因此,NRU算法和CLOCK算法的区别主要在于对页面的访问时间顺序的处理方式上。NRU算法只关注是否被访问过和是否被修改过,而CLOCK算法根据访问时间顺序进行页面置换。CLOCK算法的性能相对较好,能够较好地保留较长时间没有访问的页面,但需要额外的硬件支持。而NRU算法简单易实现,但有可能会误判页面的重要性。选择页面置换算法时,需要根据具体应用场景和硬件条件进行选择。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值