91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

這是一個系統模擬系統進程調度的例子。 實驗一是模擬進程調度。實驗二在實驗一的基礎上加了內存分配的模擬

資源截圖

代碼片段和文件信息

package?myExprimentOne;

import?java.util.Vector;

import?javax.swing.JTable;

import?myExprimentOne.data.PCB;
import?myExprimentOne.data.ProcessList;
import?myExprimentOne.view.Mainframe;
import?myExprimentOne.view.MyTableModel;

public?class?MainThread?extends?Thread?{
private?Mainframe?frame;

//?掛起隊列
private?ProcessList?waitList;

//?后備隊列
private?ProcessList?reserveList;

//?就緒隊列
private?ProcessList?readyList;

//?完成隊列
private?ProcessList?achiveList;

//?最大道數
private?int?maxProcess;

private?JTable?table;

private?Vector?tableData?=?new?Vector();

private?Vector?columNames?=?new?Vector();

private?MyTableModel?model;

public?MainThread(Mainframe?frame)?{
this.frame?=?frame;
this.waitList?=?frame.getWaitList();
this.reserveList?=?frame.getReserveList();

this.readyList?=?frame.getReadyList();
this.maxProcess?=?frame.getMaxProcess();
this.achiveList?=?frame.getAchieveList();
this.table?=?frame.getProcessTable();
this.columNames.add(“進程名“);
this.columNames.add(“要求運行的時間“);
this.columNames.add(“優先權“);
this.columNames.add(“狀態“);
model?=?(MyTableModel)?this.table.getModel();
}

public?void?run()?{
while?(true)?{
int?ProcessNum?=?waitList.getSize()?+?readyList.getSize();
//?如有可能將后務隊列中的進程調進
if?(ProcessNum? while?(this.reserveList.getSize()?>?0
&&?ProcessNum? PCB?selectedPCB?=?this.reserveList.get(0);
this.reserveList.removeProcess(selectedPCB);
selectedPCB.setState(“就緒狀態“);
this.readyList.addProcess(selectedPCB);
this.readyList.sort();
ProcessNum++;
//?更新表

for?(int?i?=?0;?i? System.out.println(“=========================“+i);
System.out.println(model.getValueAt(i?0).toString()
.trim());
if?((model.getValueAt(i?0).toString().trim())
.equals(selectedPCB.getPId().trim()))?{
model.setValueAt(“就緒狀態“?i?3);
break;
}
i++;
}
}
}
//?running一個進程。
if?(this.readyList.getSize()?>?0)?{

PCB?selectPCB?=?this.readyList.get(0);
this.readyList.removeProcess(selectPCB);
selectPCB.setState(“運行狀態“);
this.frame.setRunningPCB(selectPCB);
String?name?=?selectPCB.getPId();
int?i?=?0;
for?(;?i? if?(this.model.getValueAt(i?0).equals(name))?{
this.model.setValueAt(“運行狀態“?i?3);
break;
}
}
//?為了更好的看到實驗結果,讓進和睡3秒。
try?{
this.sleep(3000);
}?catch?(InterruptedException?e)?{
}
this.model.setValueAt(selectPCB.getPriorityNum()?+?1?i?2);

selectPCB.setPriorityNum(selectPCB.getPriorityNum()?+?1);

this.model.setValueAt(selectPCB.getNeedTimes()?-?1?i?1);
selectPCB.setNeedTimes(selectPCB.getNeedTimes()?-?1);
if?(selectPCB.getState().equals(“等待狀態“))?{
this.frame.setRunningP

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件????????391??2009-04-14?16:04??OperatingSystem\.project

?????文件????????339??2009-10-30?14:47??OperatingSystem\.classpath

?????文件???????3538??2009-05-14?22:43??OperatingSystem\source\myExprimentOne\MainThread.java

?????文件???????4372??2009-04-17?19:26??OperatingSystem\source\myExprimentOne\view\Mainframe.java

?????文件????????961??2009-04-14?23:36??OperatingSystem\source\myExprimentOne\view\MyTableModel.java

?????文件???????2226??2009-04-16?23:43??OperatingSystem\source\myExprimentOne\view\AddDialog.java

?????文件????????428??2009-04-15?00:08??OperatingSystem\source\myExprimentOne\control\MainAddLis.java

?????文件???????2012??2009-05-25?22:41??OperatingSystem\source\myExprimentOne\control\addDia\AddDialogLis.java

?????文件???????1126??2009-04-17?18:31??OperatingSystem\source\myExprimentOne\control\MainWaitLis.java

?????文件????????984??2009-04-17?19:31??OperatingSystem\source\myExprimentOne\control\MainStartLis.java

?????文件???????1202??2009-05-15?00:29??OperatingSystem\source\myExprimentOne\control\MainUnwaitLis.java

?????文件???????1314??2009-04-16?22:57??OperatingSystem\source\myExprimentOne\data\PCB.java

?????文件???????1766??2009-05-25?22:32??OperatingSystem\source\myExprimentOne\data\ProcessList.java

?????文件???????3568??2009-05-15?00:31??OperatingSystem\source\myExprimentOne\MainThreadP.java

?????文件???????3578??2009-05-15?00:28??OperatingSystem\source\myExprimentOne\MainThreadR.java

?????文件???????1639??2009-05-14?22:29??OperatingSystem\source\myExprimentTwo\data\PCB.java

?????文件????????712??2009-05-13?22:37??OperatingSystem\source\myExprimentTwo\data\MemoryItem.java

?????文件???????4328??2009-05-13?23:58??OperatingSystem\source\myExprimentTwo\data\MemoryItemVector.java

?????文件????????929??2009-05-14?02:09??OperatingSystem\source\myExprimentTwo\data\ProcessVector.java

?????文件????????557??2009-05-13?14:11??OperatingSystem\source\myExprimentTwo\data\MemoryItems.java

?????文件????????432??2009-05-14?01:56??OperatingSystem\source\myExprimentTwo\control\MainAddLis.java

?????文件???????2190??2009-05-14?23:15??OperatingSystem\source\myExprimentTwo\control\addDia\AddDialogLis.java

?????文件????????998??2009-05-14?17:01??OperatingSystem\source\myExprimentTwo\control\MainStartLis.java

?????文件???????1222??2009-05-15?00:31??OperatingSystem\source\myExprimentTwo\control\MainUnwaitLis.java

?????文件???????1060??2009-05-14?17:04??OperatingSystem\source\myExprimentTwo\control\MainWaitLis.java

?????文件???????5701??2009-05-14?23:25??OperatingSystem\source\myExprimentTwo\view\Mainframe.java

?????文件????????961??2009-05-14?00:11??OperatingSystem\source\myExprimentTwo\view\MyTableModel.java

?????文件???????1556??2009-05-14?23:20??OperatingSystem\source\myExprimentTwo\view\MemoryDraw.java

?????文件???????2912??2009-05-14?02:11??OperatingSystem\source\myExprimentTwo\view\AddDialog.java

?????文件???????4546??2009-10-30?14:46??OperatingSystem\source\myExprimentTwo\model\MainThreadP.java

............此處省略63個文件信息

評論

共有 條評論