时钟(CLOCK)置换算法

      当调入进程所请求的页面时,如果内存中已经没有空闲块了,则必须按照某种算法将内存中的若干页面淘汰至外存。用于选择淘汰页面的算法称为页面置换算法,置换算法的好坏,将直接影响到请求分页系统的性能。

FIFO置换算法和LRU置换算法的思想都比较容易理解,页面置换的推导也是简单的。但是CLOCK置换算法比较难从书上获取准确的概念了,教材上的定义替换指针的位置描述得不清楚,网上的clock例子也有一部分存在错误,让人琢磨不定。

本人认为掌握CLOCK算法的关键是:每一次进行替换或者访问后,替换指针的位置就从替换数、访问数移到下一个位置。

在稿纸上进行演算推倒过程时,我认为使用表格结构比环形结构要容易些。

示例:

 

在某请求分页管理系统中,一个作业共5页,作业执行时一次访问如下页面:1,4,3,1,2,5,1,4,2,1,4,5,若分配给该作业的主存块数为3,采用Clock页面置换算法,试求出缺页中断的次数及缺页率。

    

   

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章