




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、湖北師范學(xué)院操作系統(tǒng)實(shí)驗(yàn)報(bào)告學(xué)生學(xué)號: 2011115010820學(xué)生班級:1108學(xué)生姓名:M指導(dǎo)老師:李曉瑾完成時(shí)間:2013年12月28號實(shí)習(xí)題目:優(yōu)先數(shù)調(diào)度算法程序中使用的數(shù)據(jù)結(jié)構(gòu)及符號說明:創(chuàng)建一個Process類存放進(jìn)程,進(jìn)程中創(chuàng)建四個私有成員,private Stiiiig name;/進(jìn)程名private Integer time;/運(yùn)行時(shí)間private Integer power;/優(yōu)先級private Stiiiig status = ”R;進(jìn)程狀態(tài)類中創(chuàng)建公有方法 setName (), getName (), setTmie (), getTmie (), setPo
2、wer (), getPower (), setStatus(),getStatus ( )o源程序及注釋:public class TmieManage /* J* param args the conmiand line arguments*/public static void niaiii(Stimg args) TmieManage tm = new TimeManage();tm input。;tm.iun();System.out.pnntln(H運(yùn)行完畢);)/*建立一個list,存放進(jìn)程*/private AirayList list = new ArrayListQ;/*創(chuàng)
3、建input()方法*/private void mput() (System, out.pnntln(H 請輸入進(jìn)程的數(shù)量(int);Seamier scan = new Scamier(System.in);mt num = scan.nextliitQ;fbr (iiit i = 1; i= num; i+) Process pro = new Process();System.out.prmtliiC,輸入進(jìn)程+ i + 的進(jìn)程名(String)優(yōu)先級(int)運(yùn)行時(shí)間(int)”);pio.setName(scaii.nextQ);pro.setPowei(scan.nextInt(
4、);pro.setTuue(scan.nextInt();pro. set Statu s( ”W”); list.add(pro);)*獲得hst中的優(yōu)先級最大的那個進(jìn)程號(在list中的位置)*paiam listiemin /返回 int 型 */public hit getMax(List list) (Iteiator iter = list.iterator。; mt max = 100: int i = 0, k = 0; while (iter.hasNext() Process pro = (Process) iter.next();if (pro.getPower() ma
5、x) max = pro.getPower(); k = i; 1 J 1+; return k; ) /*進(jìn)程運(yùn)行的具體過程*/private void mnQ AnayList list! = (AirayList) list.cloneQ;TuneManage tm = new TimeManage();mtrn=M/第幾次運(yùn)行wliile (Histl.isEmptyO) int flag = 0;/作為標(biāo)志。1表示因?yàn)檫M(jìn)程運(yùn)行時(shí)間減為0后,完全銷毀int max = tm.getMax(listl);Process pro = (Process) listl.get(max);Sys
6、tem.out.pnndn(”第”+ m + ”次運(yùn)行現(xiàn)在正在運(yùn)行的進(jìn)程:”);System. out.println(”進(jìn)程號優(yōu)先級剩余運(yùn)行時(shí)間運(yùn)行狀態(tài)”);System.out.piiiitlii(pio.getName() + MH+ pio.getPowerQ + (pro.getTmieO - 1) + HR); int time = pro.getTmie(); pro.setTiine(time -1);/修改運(yùn)行時(shí)間 pro.setPower(pro.getPowerQ - 1)J/修改優(yōu)先級 listl.set(max, pro);/將己經(jīng)修改后的進(jìn)程放回原來的list 3i
7、f(tmie-l) = O) (/如果進(jìn)程的運(yùn)行時(shí)間己經(jīng)減為0時(shí),撤銷該進(jìn)程System.out.pimthi(H進(jìn)程“ + pro.getNaine() + “ 結(jié)束運(yùn)行l(wèi)ist 1 .remove(max); flag+;表示因?yàn)闀r(shí)間運(yùn)行結(jié)束,而銷毀。方便在1誼2中撤銷進(jìn)程判斷AiiayList list2 = new AirayList();/目的是復(fù)制一個 list,輸出余下的幾個 進(jìn)程list2 = (AirayList) list 1.clone。;/list2.addAll(list 1);/將 listl 復(fù)制給 list2Lf(flag= 0) (/若果時(shí)間運(yùn)行結(jié)束后,前面己
8、經(jīng)被銷毀了,則表示為1,這里就不需要刪除 了list2 .remove(max);/將己經(jīng)輸出了的一個進(jìn)程撤銷if (!list2.isEmptyO) 如果沒有了等待進(jìn)程,則不用輸出System. outpnndn(”第“+ (rn+) + “次運(yùn)行等待運(yùn)行的進(jìn)程:, else (System.out.pimtlii(沒有等待的進(jìn)程! );m+; 運(yùn)行次數(shù)也需要加1wlule (!list2.isEmpty() 將剩余的其他幾個進(jìn)程輸出來hit max2 = tin.getMax(list2);Process proc = (Process) Iist2.get(niax2)/輸出的時(shí)候選擇優(yōu)
9、先級最大的一個進(jìn)程System.out.pimthi(進(jìn)程號優(yōu)先級剩余運(yùn)行時(shí)間運(yùn)行狀態(tài)”);System.out.priiitlii(pioc.getNaine() + H+ pioc.getPower() +HH+ proc.getTune() + ”WH);Iist2.remove(niax2)y/每次輸出了一個進(jìn)程之后,將這個進(jìn)程銷毀)流程圖:L戛攔打印運(yùn)行作業(yè),運(yùn)行一次蕓程優(yōu)先羞=伉撅 -1.廷行時(shí)間=近行仃間4判枝共您是否 運(yùn)行充早物出各個遂程法亍信況至束運(yùn)行結(jié)果截圖:輸入兩個進(jìn)程:進(jìn)程名:pl,優(yōu)先級:5,運(yùn)行時(shí)間:2 進(jìn)程名:p2,優(yōu)先級:4,運(yùn)行時(shí)間:3 運(yùn)行結(jié)果截圖如下:run*礙禽入注程的教量Gnth 2輸入進(jìn)105走程名(String)優(yōu)匏(int)定行時(shí)間(int) pl 5 2瑜入進(jìn)程2的走程W (String)伉羌級(int)歪行時(shí)間(int) p2 4 3 第L次近行現(xiàn)在正在運(yùn)行的送塾 送程號優(yōu)先通瀏余運(yùn)嚀時(shí)間運(yùn)行狀態(tài) TOC o 1-5 h z P1-5R第次運(yùn)容等待運(yùn)行的注程: 注程號優(yōu)先紜崽會運(yùn)行時(shí)間p2-43R第2次迄行現(xiàn)在正在運(yùn)行的注程】 送程號伉先級剩余運(yùn)行時(shí)間運(yùn)行狀恣pl4 0R注程P1皓束適行 第2次運(yùn)容等待運(yùn)行的注程: 遂程號優(yōu)先皺明豪適行時(shí)間適行狀志p243第3次運(yùn)行現(xiàn)在正
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 開學(xué)心理健康教育主題班會
- 2025年銷售工作方案
- 不同行業(yè)標(biāo)志設(shè)計(jì)介紹
- 兒童護(hù)理與醫(yī)療醫(yī)學(xué)匯報(bào)模板
- 迎接2025年度八一建軍節(jié)與活動方案流程
- 多發(fā)創(chuàng)傷患者的監(jiān)測與護(hù)理
- 白樺林創(chuàng)意美術(shù)
- 關(guān)于2025年學(xué)校安全維穩(wěn)應(yīng)急方案
- 癌痛患者護(hù)理查房
- 第1章貨幣制度
- 機(jī)電安裝總進(jìn)度計(jì)劃橫道圖
- 起重吊裝作業(yè)安全綜合驗(yàn)收記錄表
- 常規(guī)檢泵設(shè)計(jì)培訓(xùn)
- 園林綠化工程監(jiān)理實(shí)施細(xì)則(完整版)
- 夏季防溺水安全知識主題班會課件【愛生命防溺水】
- 夢想(英語演講稿)PPT幻燈片課件(PPT 12頁)
- 中國聯(lián)通員工績效管理實(shí)施計(jì)劃方案
- 法院刑事審判庭速裁庭廉政風(fēng)險(xiǎn)防控責(zé)任清單
- IEC60335-1(中文)
- 土方填筑碾壓試驗(yàn)報(bào)告
- 排沙泵檢修工藝流程及驗(yàn)收標(biāo)準(zhǔn)
評論
0/150
提交評論