资源简介
通过gui实现算法,包括fifo,LRU等算法,很详细,入门级别。

代码片段和文件信息
package FIFO;
import java.util.*;
public class FIFO {
private int N; //页框大小
private int yekuang[]; //页框数组
private int xulie[]; //访问页面序列数组
private int size; //判断页框是否已满
private Listlist=null;
private double queyelv;
public FIFO(String strint N){
size=0;
Scanner scan=new Scanner(System.in);
// System.out.println(“请依次输入页面访问序列,中间以空格隔开:“);
list=new ArrayList();
// String s=scan.nextLine();
// String []s1=s.split(“ “);
String []s1=str.split(“ “);
int m=s1.length;
xulie=new int[m];
for (int i=0;i list.add(Integer.valueOf(s1[i]));
for(int i=0;i xulie[i]=list.get(i);
// System.out.println(“请输入页框大小(3-10):“);
// N=scan.nextInt();
this.N=N;
this.yekuang=new int[N];
for(int i=0;i this.yekuang[i]=-1;
}
}
public boolean isExist(int num){ //判断页框中是否存在该数
for(int i=0;i if(yekuang[i]==num){
return true;
}
}
return false;
}
public String[] execute(){ //主执行方法
int queyeshu=0;
double zongyeshu=this.xulie.length;
String str[]=new String[50];
for(int i=0;i<50;i++){
str[i]=““;
}
int strLen=0;
int k=0; //访问页面序列计数
while(size if(isExist(xulie[k])==false){ //若该数不存在
queyeshu++;
this.yekuang[size]=xulie[k]; //将数存入页框,页框计数size加一
for(int i=0;i str[strLen]+=“[“+this.yekuang[i]+“]“;
}
str[strLen++]+=“\t***页框有空***a!---即将访问页面““+xulie[k]+“”---!b不存在页框内c将页面““+xulie[k]+“”存入页框【“+(size+1)+“】“;
k++;
size++;
}
else{ //该数已存在于页框中
for(int i=0;i str[strLen]+=“[“+this.yekuang[i]+“]“;
}
str[strLen++]+=“\t***页框未满***a!---即将访问页面““+xulie[k]+“”---!b已经存在c不做置换“;
k++; //仅将访问页面序列加一
}
/* for(int i=0;i System.out.print(yekuang[i]+“ “);
}
System.out.println();
*/
}
int n=0; //先进先出,从第一个页框开始置换
while(k if(isExist(xulie[k])==false){ //不存在
queyeshu++;
int temp=this.yekuang[n];
this.yekuang[n]=xulie[k]; //将数放入指定页框
for(int i=0;i str[strLen]+=“[“+this.yekuang[i]+“]“;
}
str[strLen++]+=“\t***页框满!***a!---即将访问页面““+xulie[k]+“”---!b不存在页框内c将页面““+xulie[k]+“”存入页框【“+(n+1)+“】,置换出页面““+temp+“”“;
k++;
n++;
}
else{
for(int i=0;i str[strLen]+=“[“+this.yekuang[i]+“]“;
}
str[strLen++]+=“\t***页框满!***a!---即将访问页面““+xulie[k]+“”---!b已经存在c不做置换“;
k++;
}
if(n==N){ //当交换三次后,归零,又从第一个页框开始置换
n=0;
}
/* for(int i=0;i System.out.print(yekuang[i]+“ “);
}
System.out.println();
*/
}
System.out.println(queyeshu+“ “+zongyeshu);
this.queyelv=queyeshu/zongyeshu;
str[strLen++]=“缺页率为 “;
str[strLen]=this.queyelv+““;
return str;
}
public static void main(String[] args) {
// TODO Auto-generated method stub
// int xulie[]={12243511202};
String str=“1 2 2 4 3 5 1 1 2 0 2“;
FIFO f=new FIFO(str3);
String s[]
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-07-03 13:54 页面置换算法gui(无时钟)\
文件 295 2018-12-29 15:45 页面置换算法gui(无时钟)\.classpath
文件 365 2018-12-29 15:45 页面置换算法gui(无时钟)\.project
目录 0 2019-07-03 13:54 页面置换算法gui(无时钟)\.settings\
文件 587 2018-12-29 15:45 页面置换算法gui(无时钟)\.settings\org.eclipse.jdt.core.prefs
目录 0 2019-07-04 00:31 页面置换算法gui(无时钟)\bin\
目录 0 2019-07-04 00:31 页面置换算法gui(无时钟)\bin\FIFO\
文件 4012 2019-07-04 00:31 页面置换算法gui(无时钟)\bin\FIFO\FIFO.class
目录 0 2019-07-04 00:31 页面置换算法gui(无时钟)\bin\LRU\
文件 4453 2019-07-04 00:31 页面置换算法gui(无时钟)\bin\LRU\LRU.class
目录 0 2019-07-04 00:31 页面置换算法gui(无时钟)\bin\Main\
文件 8867 2019-07-04 00:31 页面置换算法gui(无时钟)\bin\Main\Page_Replacement.class
目录 0 2019-07-04 00:31 页面置换算法gui(无时钟)\bin\OPT\
文件 5228 2019-07-04 00:31 页面置换算法gui(无时钟)\bin\OPT\OPT.class
文件 112 2018-12-29 15:45 页面置换算法gui(无时钟)\README.md
目录 0 2019-07-03 13:54 页面置换算法gui(无时钟)\src\
目录 0 2019-07-03 13:54 页面置换算法gui(无时钟)\src\FIFO\
文件 3388 2018-12-29 15:45 页面置换算法gui(无时钟)\src\FIFO\FIFO.java
目录 0 2019-07-03 13:54 页面置换算法gui(无时钟)\src\LRU\
文件 3890 2018-12-29 15:45 页面置换算法gui(无时钟)\src\LRU\LRU.java
目录 0 2019-07-03 13:54 页面置换算法gui(无时钟)\src\Main\
文件 11273 2018-12-29 15:45 页面置换算法gui(无时钟)\src\Main\Page_Replacement.java
目录 0 2019-07-03 13:54 页面置换算法gui(无时钟)\src\OPT\
文件 3946 2018-12-29 15:45 页面置换算法gui(无时钟)\src\OPT\OPT.java
- 上一篇:labview做的转速采集vi
- 下一篇:思科服务器raid卡驱动
相关资源
- CoreUIVue是基于Bootstrap4的免费Vue管理模
- SpringBoot+H2+mybatis-plus59130
- 登录注册界面.zip48872
- 数字华容道
- SSM+Shiro+redis实现单点登陆
- jstl-api-1.2和jstl-impl-1.2
- 基于MVC模式的会员管理系统
- 国内一家大型软件公司内部的正规软
- 仿windows记事本
- GUI银行管理系统
- 超市收银系统eclipse access大学课程设计
- 模拟ATM柜员机系统--连接数据库
- A*算法的2D演示(带源码)
- 代码审查表和代码审查实例
- 仿126 网易 163 邮箱 界面
- Tomcat6.x
- 简单的行编辑器
- 扫雷(MVC架构)
- 302 Found
- window ping命令加时间并记录日志
- springboot+rabbitmq项目demo(亲测可正常运
- jxbrowser 所有版本通用的破解包
- 2017年-传智播客-张志君老师-SpringBoo
- Blob.js+Export2Excel.js
- 机会路由源代码+仿真工具(SCORP)
- POI中文帮助文档附带api手册.zip
- 2018双十一阿里供应链服务平台讲座
- 原银在线信贷平台概要设计说明书v
- office_word_api 开发文档
- sun.misc.Unsafe源码
评论
共有 条评论