假设某程序的页面访问序列为:1、2、3、4、5、2、3、1、2、3、4、5、1、2、3、4且开始执行时主存中没有页面,分配给该程序的物理块数是3,使用下列页面置换算法,求出现置换的次数及缺页率。、
(1)FIFO先进先出替换算法
(2)LRU最近最久未使用算法。
注:置换是指页面发生交换,缺页指访问的页不在块中
答:
FIFO先进先出替换算法 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
访问序列 | 1 | 2 | 3 | 4 | 5 | 2 | 3 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 |
物理块1 | 1 | 1 | 1 | 4 | 4 | 4 | 3 | 3 | 3 | 3 | 3 | 5 | 5 | 5 | 5 | 4 |
物理块2 | 2 | 2 | 2 | 5 | 5 | 5 | 1 | 1 | 1 | 1 | 1 | 1 | 2 | 2 | 2 | |
物理块3 | 3 | 3 | 3 | 2 | 2 | 2 | 2 | 2 | 4 | 4 | 4 | 4 | 3 | 3 | ||
缺页 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | |||
置换 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
置换次数:10次;缺页率:=13/16=81.25%
LRU最近最久未使用算法 | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
访问序列 | 1 | 2 | 3 | 4 | 5 | 2 | 3 | 1 | 2 | 3 | 4 | 5 | 1 | 2 | 3 | 4 |
物理块1 | 1 | 1 | 1 | 4 | 4 | 4 | 3 | 3 | 3 | 3 | 3 | 3 | 1 | 1 | 1 | 4 |
物理块2 | 2 | 2 | 2 | 5 | 5 | 5 | 1 | 1 | 1 | 4 | 4 | 4 | 2 | 2 | 2 | |
物理块3 | 3 | 3 | 3 | 2 | 2 | 2 | 2 | 2 | 2 | 5 | 5 | 5 | 3 | 3 | ||
缺页 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ||
置换 | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
置换次数:11次;缺页率:=14/16=87.5%