時鐘策略

作業系統的一種置換策略算法。作業系統的設計者嘗試了很多算法,試圖以較小的開銷接近LRU(最近最少使用)的性能。許多這類算法都是稱為時鐘策略的各種變體。
最簡單的時鐘策略需要給每一頁框關聯一個附加位,稱為使用位。當某一頁首次裝入記憶體中時,則將該頁框的使用位設定為1;當該頁隨後被訪問到時(在訪問產生缺頁中斷之後),它的使用位也會被設定為1。對於頁面置換算法,用於置換算法,用於置換的候選頁框集合(當前進程:局部範圍;整個記憶體;全局範圍)被看做是一個循環緩衝區,並且有一個指針與之相關聯。當一頁被置換時,該指針被設定成指向緩衝區中的下一頁框。當需要置換一頁時,作業系統掃描緩衝區,以查找使用位被置為0的一頁框。每當遇到一個使用位為1的頁框時,作業系統就將該位重新置為0;如果在這個過程開始時,緩衝區中所有頁框的使用位均為0時,則選擇遇到的第一個頁框置換;如果所有頁框的使用位均為1時,則指針在緩衝區中完整地循環一周,把所有使用位都置為0,並且停留在最初的位置上,置換該頁框中的頁。可見該策略類似於FIFO(先進先出),唯一不同的是,在時鐘策略中使用位為1的頁框被跳過,該策略之所以稱為時鐘策略,是因為可以把頁框形象地想像成在一個環中。許多作業系統都採用這種簡單時鐘策略的某種變體。

相關詞條

熱門詞條

聯絡我們