计算机系统结构大题精讲3-堆栈模拟算法
堆栈模拟替换算法
3、使用LRU算法的页式存储器共有9页空间准备分配给A、B两道程序。已知若给B到程序分配4页时,其命中率为8/15,若给其分配5页时,其命中率为10/15。现给出A道程序执行中的页地址流为:2、3、2、1、5、2、4、5、3、2、5、2、1、4、5。
1)画出用堆栈对A道程序页地址流的模拟程序图,分别计算给其分配4页和5页时的命中率
2)根据已知条件计算上述计算结果,给A、B两道程序各分配多少实页,可使系统效率最高?
解:1)解题思路:每次从栈顶压入数据
页地址流 | 2 | 3 | 2 | 1 | 5 | 2 | 4 | 5 | 3 | 2 | 5 | 2 | 1 | 4 | 5 |
堆栈内容 | 2 | 3 | 2 | 1 | 5 | 2 | 4 | 5 | 3 | 2 | 5 | 2 | 1 | 4 | 5 |
2 | 3 | 2 | 1 | 5 | 2 | 4 | 5 | 3 | 2 | 5 | 2 | 1 | 4 | ||
3 | 2 | 1 | 5 | 2 | 4 | 5 | 3 | 3 | 5 | 2 | 1 | ||||
3 | 3 | 1 | 1 | 2 | 4 | 4 | 4 | 3 | 5 | 2 | |||||
3 | 3 | 1 | 1 | 1 | 1 | 4 | 3 | 3 | |||||||
命中率4 | 载入 | 载入 | H | 载入 | 载入 | H | 载入 | H | 载入 | H | H | H | 载入 | 载入 | H |
命中率5 | 载入 | 载入 | H | 载入 | 载入 | H | 载入 | H | H | H | H | H | H | H | H |
A | B | |
n=4 | 7/15 | 8/15 |
n=5 | 10/15 | 10/15 |
2)A---n=4时,即给A分配4页时,A的命中率:7/15,此时给B分配5页,B的命中率:10/15。平均命中率 H=(7/15+10/15)/2=17/30
A---n=5时即给A分配5页时,A的命中率:10/15,此时给B分配54页,B的命中率:8/15。平均命中率 H=(10/15+8/15)/2=18/30
因为18/30大于17/30,所以给A分配5页,B分配4页,可使系统效率最高
本文来自博客园,作者:{Tester十点半},转载请注明原文链接:https://www.cnblogs.com/jialeliu/p/16719316.html