实验报告五
实验名称模拟页面置换算法FIFO、LRU的实现日期:2015129班级:13级计科学号
姓名:
一、实验目的
了解页面置换的概念,理解页面置换的算法加深对页面置换算法的理解。
二、实验内容
Java编程语言实现FIFO和LUR页面算法。
三、项目要求与分析
FIFO算法当需要置换页面时,主要通过置换最早进入内存的页面从而达到先进先
出的目的。
LRU算法当需要置换页面时,主要通过置换进入内存中最久没有被访问的页面而达
到最近最久未使用的目的。程序中可以通过标志位进行记录。
四、具体实现
1FIFO算法实现代码以及运行结果:
publicclassFIFO
内存块的个数
publicstatici
tN
内存块数组
Objectarray
ewObjectN
要访问的页面数组
publicstatici
tvisit
privatei
tsize
内存是非空为否
retur
publicboolea
isEmpty
if0size
retur
true
else
retur
false
内存是非空满retur
fpublicboolea
isFulledifsizeNretur
trueelseretur
false
元素页框的个数retur
publici
tsize
retur
size
查找元素o在数组中的位置paramoretur
publici
ti
dexOfEleme
tObjecto
fori
ti0iNiifoarrayiretur
i
retur
1页面转换paramobjpublicObjecttra
sObjectobjObjecte
ulli
tt0ifi
dexOfEleme
tobj1
ti
dexOfEleme
tobjfori
titisize1i
arrayiarrayi1arraysize1objelseifisFulled
arraysizeobjsizeelse
ffori
ti0isize1i
arrayiarrayi1
arraysize1obj
if1t
retur
ull
else
retur
arrayt
输出内存区中的各数据
publicvoidshowMemoryBlock
fori
ti0isizei
Systemoutpri
tarrayi