?? pcb.java
字號:
import java.util.Random;
public class Pcb {
private String PID;
private String sup;
private int rtime; //要求運(yùn)行時間
private int htime; //已經(jīng)運(yùn)行時間
private int res; //還需資源量
private int ares; //資源需求總量,最大申請量
private int hres; //已占有資源
private int request; //當(dāng)前申請資源量
private int rstore; //所需主存大小
private int storeadd; //主存起始位置
private String s;
Tu t = null;
Random rd = new Random();
CheckSafe cs;
public Pcb(Tu t,int i){
this.t = t;
}
public Pcb(Tu t) {
this.t = t;
PID = t.tpid.getText();
sup = t.tsup.getText();
rtime = Integer.parseInt(t.trtime.getText());
ares = Integer.parseInt(t.tares.getText());
hres = 0;
res = ares-hres;
request = 0;
rstore = Integer.parseInt(t.trs.getText());
htime = 0;
storeadd = 0;
}
public void setPID(String s){
this.PID = s;
}
public String getPID(){
return PID;
}
public int getsup(){
return Integer.parseInt(sup);
}
public void setsup(int s){
this.sup = Integer.toString(s);
}
public void setrtime(int s){
this.rtime=s;
}
public int getrtime(){
return rtime;
}
public int gethtime(){
return htime;
}
public void sethtime(int s){
this.htime = s;
}
public int getres(){
return res;
}
public void setres(int s){
this.res = s;
}
public int gethres(){
return hres;
}
public void sethres(int s){
this.hres = s;
}
public int getRequest(){
return request;
}
public void setRequest(int i){
this.request = i;
}
public int getares(){
return ares;
}
public void setares(int s){
this.ares = s;
}
public int getrstore(){
return rstore;
}
public void setrstore(int s){
this.rstore = s;
}
public int getstoreadd(){
return storeadd;
}
public void setstoreadd(int s){
this.storeadd = s;
}
public void giveRequest(){
this.res = ares - hres;
if(this.rtime<=t.timeslice)
this.request = res;
else
this.request = rd.nextInt(res + 1);
}
public boolean haveRequest() {
this.hres += request;
this.res -= request;
if (t.xaRes >= request) {
t.xaRes -= request;
cs = new CheckSafe(t);
if (!cs.test()) {
t.xaRes += request;
this.hres -= request;
this.res += request;
return false;
} else
return true;
} else {
this.hres -= request;
this.res += request;
return false;
}
}
public String toString(){
s = "PID:"+PID+" 優(yōu)先級:"+sup+" 要求運(yùn)行時間:"+rtime
+" 資源需求總量:"+ares+" 已占有資源:"+hres+" 還需要資源量:"+res
+" 當(dāng)前申請量:"+request+" 主存起始位置:"+storeadd;
return s;
}
}
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -