📄 simcpu.java
字号:
package simcpu;
public class Simcpu {
public static void main(String[] args) {
System.out.println("*****************************");
System.out.println("FCFS:");
main(args,"FCFS");
System.out.println("*****************************");
System.out.println("Round Robin");
main(args,"Round Robin");
}
/**
* @param args
*/
public static void main(String[] args,String plicy) {
/**
* policy:
* FCFS
* Round Robin
*/
SimSystem.setPolicy(plicy);
boolean _d=false,_v=false;
String file=null;
for(int i=0;i<args.length;i++) {
if(args[i].equalsIgnoreCase("-d"))
_d=true;
else if(args[i].equalsIgnoreCase("-v"))
_v=true;
else if(args[i].equals("<"))
file=args[i+1];
else if(args[i].startsWith("<"))
file=args[i].substring(1);
}
DataSource.setArgs(_d,_v);
DataSource.init(file);
SimSystem sys=new SimSystem();
EventDriver driver=new EventDriver(sys);
SimThread.driver=driver;
sys.setDriver(driver);
for(int i=1;i<=DataSource.nProcess;i++) {
for(int j=1;j<DataSource.arrivalTimes[i].length;j++) {
driver.predict(new ArrivalEvent(DataSource.arrivalTimes[i][j],driver,sys,i,j));
}
}
driver.run();
System.out.println();
System.out.println("======================================");
System.out.println("Policy: "+SimSystem.policy);
int i,j;
System.out.println("Tatol time:"+(i=driver.getNow()));
System.out.println("Average Turnaround Time:"+DataSource.getAverageTurnroundTime());
j=sys.timer.read();
System.out.println("CPU utilization:"+(float)j*100/i+"%");
System.out.println("======================================");
if(_d) {
for(SimThread thread:DataSource.threadpool) {
System.out.println();
System.out.println("Thread "+thread.tid+" of Process "+thread.pid+" :");
System.out.println("Arrival time:"+thread.arrivalTime);
System.out.println("Service time:"+thread.serviceTime+" units");
System.out.println("I/O time:"+thread.ioTime+" units");
System.out.println("Turnaround time:"+thread.roundTime+" units");
System.out.println("Finish time:"+thread.finishTime);
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -