一、实验内容
(1)设程序中地址范围为0 到32767 ,采用随机数生成256 个指令地址,满足50%的地址是顺序执行,25%向前跳,25% 向后跳。为满足上述条件,可采取下列方法:设d0=10000,第 n个指令地址为dn,第 n+1 个指令地址为dn+1 ,n的取值范围为0 到255。每次生成一个 1 到1024范围内的随机数a,如果a落在1 到512 范围内,则dn+1 =dn+1。如果a落在513 到768范围内,则设置dn+1 为1 到dn范围内一个随机数。如果a落在769 到1024范围内,则设置dn+1 为dn到32767 范围内一个随机数。
通过随机数产生一个指令序列,共320条指令。其地址按下述原则生成:
①50%的指令是顺序执行的;
②25%的指令是均匀分布在前地址部分;
③25%的指令是均匀分布在后地址部分;
将指令序列变换为页地址流
1k 的地址大小范围为1024
页面大小的取值范围为1K,2K,4K,8K,16K 。按照页面大小将指令
地址转化为页号。对于相邻相同的页号,合并为一个。
分配给程序的内存块数取值范围为1 块,2 块,直到程序的页面数。
分别采用OPT、FIFO 和LRU算法对页号序列进行调度,计算出对应
的缺页中断率。
计算并输出下述各种算法在不同内存容量下的缺页中断率
v FIFO先进先出的算法
v LRU最近最少使用算法
v LFU最少访问页面算法
二、实验原理
(一)OPT:最佳置换算法
该算法选择淘汰的页面将是以后永远不再使用,或者是在将