📄 lrupagereplacement.java~7~
字号:
package cn.edu.cauc.crab.ossimulate;import java.util.*;/** * <p>Title: OS simulate</p> * <p>Description: This is my home work.</p> * <p>Copyright: Copyleft (c) 2004</p> * <p>Company: CAUC</p> * @author Crab * @version 0.1 */public class LRUPageReplacement extends PageReplacement { public LRUPageReplacement(int memoryBig) { super(memoryBig); } void printMemory() { System.out.print("内存:"); Iterator p = memory.iterator(); while (p.hasNext()) { Page page = (Page)p.next(); System.out.print("" + page.number + " "); } System.out.print("\n"); } void deleteLRU() { Iterator p = memory.iterator(); Page lru = (Page)p.next(); while (p.hasNext()) { Page page = (Page)p.next(); if (page.time < lru.time) { lru = page; } } memory.remove(lru); } public void start() { int time = 0; while (!pageList.isEmpty()) { Page page = (Page)pageList.remove(0); if (inMemory(page, time)) { System.out.print("命中:" + page.number + "\n"); } else { // 未命中 if (memory.size() < memoryBig) { page.time = time; memory.add(page); //out put the memory printMemory(); } else { deleteLRU(); page.time = time; memory.add(page); //out put the memory printMemory(); } } time++; } } public static void main(String[] args) { PageReplacement pR = new LRUPageReplacement(3); }}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -