操作系统时钟(CLOCK)置换算法

一个作业物理块数为3,作业页面走向为3,4,2,6,4,3

时钟(CLOCK)置换算法流程

注意:红色为访问位,蓝色为内存数据

箭头处开始

 

第一步:

第一个页面走向为3,此时内存中没有数据,且访问位为0,于是将3放入内存,并修改访问位为1,指针下移,得到如下图

 

第二步:

第二个页面走向为4,此时指针指向处无数据,且访问位为0,于是将4放入内存,并修改访问位为1,指针下移,得到如下图

 

第三步:

第三个页面走向为2,此时指针指向处无数据,且访问位为0,于是将2放入内存,并修改访问位为1,指针下移,得到如下图

 

第四步:

第四个页面走向为6,此时指针指向处有数据3,非6,且访问位为1,不放入,于是将访问位由1变0,然后指针下移得到如下图

 

第五步:

此时指针指向处有数据4,非6,且访问位为1,不放入,于是将访问位由1变0,然后指针下移得到如下图

 

第六步:

此时指针指向处有数据2,非6,且访问位为1,不放入,于是将访问位由1变0,然后指针下移得到如下图

第七步:

已完成一圈,此时指针指向处有数据3,非6,且访问位为0,于是放入6,然后将访问位由0变1,然后指针下移得到如下图

 

第八步:

第五个页面走向为4,此时指针指向处有数据4,为4,且访问位为0,于是将访问位由0变1,然后指针下移得到如下图

 

第九步:

第六个页面走向为3,此时指针指向处有数据2,非3,且访问位为0,于是放入3,然后将访问位由0变1,然后指针下移得到如下图

 

至此置换流程结束。

总结:

当内存中无对应数据时访问位为0即可置换之后再变换访问位,访问位为1不置换仍然变换访问位然后指针下移。当内存中有对应数据时,访问位变换,指针下移。

每访问一次,无论是否发生置换,访问位都要变换。

 

 

  • 214
    点赞
  • 486
    收藏
    觉得还不错? 一键收藏
  • 23
    评论
页面置换算法操作系统中的一个重要概念,用于解决虚拟内存中的页面置换问题。常见的页面置换算法包括最佳置换算法、先进先出页面置换算法、最近最久未使用置换算法、改进型Clock置换算法和页面缓冲算法等。 最佳置换算法是一种理论上的算法,它总是选择最长时间内不再被访问的页面进行置换,以保证最小化缺页率。但是,由于需要预测未来的页面访问情况,因此在实际应用中很难实现。 先进先出页面置换算法是一种简单的算法,它总是选择最先进入内存的页面进行置换。这种算法容易实现,但是可能会导致“老旧页面”长时间占用内存,从而增加缺页率。 最近最久未使用置换算法是一种基于时间局部性原理的算法,它总是选择最长时间未被访问的页面进行置换。这种算法相对于先进先出算法能够更好地利用时间局部性,但是需要维护一个访问时间戳,因此实现起来比较复杂。 改进型Clock置换算法是一种基于时钟算法的改进算法,它通过维护一个环形链表和一个访问位来实现页面置换。这种算法相对于最近最久未使用算法能够更好地平衡页面的访问频率和时间,但是需要更多的硬件支持。 页面缓冲算法是一种基于缓存的算法,它通过将热点数据缓存到内存中来减少缺页率。这种算法相对于其他算法能够更好地利用空间局部性,但是需要更多的内存空间。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值