


下載本文檔
版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、實(shí)驗(yàn)報(bào)告遼寧科技大學(xué)電信學(xué)院(系)計(jì)算機(jī)科學(xué)與技術(shù)2014年 10月 16日課名:編譯原理實(shí)驗(yàn)項(xiàng)目名稱: (進(jìn)程)作業(yè)調(diào)度班級(jí):計(jì)算機(jī) 122姓名:王玉園學(xué)號(hào): 任課教師:柴玉梅實(shí)驗(yàn)?zāi)康模洪喿x,調(diào)試并注釋一個(gè)單道批處理系統(tǒng)的作業(yè)調(diào)度程序, 通過對(duì)本程序的閱讀, 加深對(duì)作業(yè)調(diào)度算法的理解。實(shí)驗(yàn)分析與要求:1、 由于在單道批處理系統(tǒng)中, 作業(yè)一旦投入運(yùn)行, 它就占有計(jì)算機(jī)的一切資源直到作業(yè)完成為止。 因此調(diào)度作業(yè)時(shí),不必考慮它所需要的資源是否得到滿足、占用的 cpu 時(shí)限等因素2、每個(gè)作業(yè)由一個(gè)作業(yè)控制塊 JCB表示,JCB可以包含以下信息:作業(yè)名,提交時(shí)間,所需運(yùn)行時(shí)間, 所需資源,作業(yè)狀態(tài)等。
2、作業(yè)的狀態(tài)可以是等待、 運(yùn)行、和完成三種狀態(tài)之一。每個(gè)作業(yè)的最初狀態(tài)總是處于等待狀態(tài)中。3、對(duì)每種調(diào)度算法都要求顯示每一個(gè)作業(yè)開始運(yùn)行時(shí)刻,完成時(shí)刻,周轉(zhuǎn)時(shí)間,帶權(quán)周轉(zhuǎn)時(shí)間,這組作業(yè)的 pig 均周轉(zhuǎn)和時(shí)間和帶權(quán)平均周轉(zhuǎn)時(shí)間。4、可以自行編碼實(shí)現(xiàn),語(yǔ)言不限。實(shí)驗(yàn)內(nèi)容:package test;publicclassjob staticintjobin ,count ;staticintjobnum = 100;staticdoubledaiT =newdouble jobnum ;/帶權(quán)周轉(zhuǎn)時(shí)間staticdoubleT1,T2;publicstaticvoidpaixuFCFS(intjob
3、in) for ( inti = 0; i < jobin.length ; i+) /按照到達(dá)時(shí)間進(jìn)行升序排序(冒泡排序)for ( intj = i + 1; j < jobin.length ; j+) 1 / 7if(jobini0 > jobinj0) for(intm = 0; m < 8; m+) count= jobinim;jobinim = jobinjm;jobinjm =count;publicstaticvoidpaixuSJF(intjobin) paixuFCFS (jobin);/到達(dá)時(shí)間已經(jīng)是升序inttime =newintjobin
4、.length ;for(inti = 0; i < time.length ; i+) /初始化滿足條件的工作所需要的時(shí)間timei = 9999;intm = 1;intFtime = jobin00 + jobin01;/第一個(gè)工作開始,算出完成時(shí)間for(inti3 = 1; i3 < jobin.length ; i3+) / 未完成的工作for(inti1 = i3, a = 0; i1 < jobin.length; i1+) if(Ftime >= jobini10) / 工作完成時(shí)已經(jīng)到達(dá)的工作所需要的時(shí)間 timea = jobini11;a+;fo
5、r( int i = 0; i < time. length ; i+) / 找其中所需要時(shí)間最小的 time0 = time0 < timei ? time0 : timei;for( intn = i3; n < jobin.length; n+) if(jobinn1 = time0)/找出該工作是對(duì)應(yīng)的第幾個(gè)工作for ( int m1 = 0; m1 < 8; m1+) / 將他與將要執(zhí)行的工作交換 count = jobini3m1;jobini3m1 = jobinnm1;jobinnm1 =count ;2 / 7Ftime += jobinm1;/下一
6、個(gè)工作已確定,需要時(shí)間加上m+;publicstaticvoidpaixuHRN( intjobin) paixuFCFS (jobin);/冒泡排序比較哪個(gè)工作先到達(dá)的doublerp =newdouble jobin.length; /響應(yīng)比intfiT;/作業(yè)完成時(shí)候的時(shí)間intwaitT =newint jobin.length; /等待時(shí)間rp0 = 9999;fiT = jobin00 + jobin01;/第一個(gè)工作完成時(shí)的時(shí)間waitT0 = 0;/第一個(gè)工作不用等待inti = 1, i4, max = 10;while(i < jobin.length) /還要執(zhí)行
7、length-1個(gè)工作for( inti2 = i; i2 < jobin.length; i2+) /剩下的未執(zhí)行的工作 ,計(jì)算響應(yīng)比if(jobini20 <= fiT) /如果到達(dá)時(shí)間大于完成時(shí)間waitTi2 = fiT - jobini20;/等待時(shí)間等于上一個(gè)工作的完成時(shí)的時(shí)間減自己的到達(dá)時(shí)間rpi2 = (double ) waitTi2 / (double )jobini21;/計(jì)算出響應(yīng)比elserpi2 = 0.0;max = i;for(i4 = i + 1; i4 < rp.length; i4+) /對(duì)響應(yīng)比數(shù)組選擇最大的max = rpi4 >
8、; rpmax ? i4 : max;if(max != i) for( intm = 0; m < 8; m+) /交換每行的數(shù)據(jù)count= jobinmaxm;jobinmaxm = jobinim;jobinim =count ;fiT += jobini1;i+;3 / 7publicstaticvoidjisuan(intjobin) /計(jì)算各工作的開始,結(jié)束,等待,周轉(zhuǎn)時(shí)間jobin03 = jobin00;jobin04 = jobin03 + jobin01;jobin05 = 0;jobin06 = jobin04 - jobin00;daiT 0 = (float)
9、 jobin06 / (float) jobin01);for( inti = 1; i <jobnum ; i+) jobini3 = (jobini0 > jobini - 14) ?jobini0: jobini - 14;/開始時(shí)間jobini4 = jobini3 + jobini1;/結(jié)束時(shí)間jobini5 = (jobini3 - jobini0);/等待時(shí)間jobini6 = jobini4 - jobini0;/周轉(zhuǎn)時(shí)間daiT i = (float) jobini6 / (float) jobini1);/帶權(quán)周轉(zhuǎn)時(shí)間publicstaticvoidPJ( in
10、tjobin,double daiT2) /計(jì)算平均周轉(zhuǎn)時(shí)間和帶權(quán)平均周轉(zhuǎn)時(shí)間doublem = 0.0, n = 0.0;for( inti = 0; i < jobin.length; i+) /累加求和m += jobini6;n += daiT2i;T1 = m;T2 = n;publicstaticvoidoutput(intjobin,doubleT1,doubleT2) /輸出運(yùn)行結(jié)果for( inti = 0; i <jobnum ; i+) System. out .print(" 工作 " + jobini2 +" 開始運(yùn)行 &qu
11、ot; );System. out .print("開始時(shí)刻為: " + jobini3);System. out .print("結(jié)束時(shí)刻為: " + jobini4);System. out .print("周轉(zhuǎn)時(shí)間為: " + jobini6);System. out .println("帶權(quán)周轉(zhuǎn)時(shí)間為: " +daiT i +"運(yùn)行結(jié)束。 " );4 / 7System. out .println(" 作業(yè)的平均周轉(zhuǎn)時(shí)間為:" + T1 /jobin.length+&
12、quot; 帶權(quán)平均周轉(zhuǎn)時(shí)間為: "+ T2 / jobin.length);publicstaticvoidmain(String args) System. out .print(" 請(qǐng)輸入工作的個(gè)數(shù): " );Scanner a =new Scanner(System.in );jobnum = a.nextInt();intjobin =newint jobnum 8;for( inti = 0; i <jobnum ; i+) System. out .print(" 請(qǐng)輸入工作 " + (i + 1) +" 的到達(dá)時(shí)
13、間和完成所需要的時(shí)間: " );for( intj = 0; j< 2; j+) /jobini0表示到達(dá)時(shí)間, jobini1表示需要時(shí)間jobinij = a.nextInt();jobini2 = i + 1;/ jobini2表示第幾個(gè)工作intchoice;System. out .println(" 請(qǐng)選擇您想要那種算法:" );System. out .println("1.FCFS 算法(先來(lái)先服務(wù)) " );System. out .println("2.SJF 算法: ( 最短作業(yè)優(yōu)先 )" );System. out .println("3.HRN 算法(最高響應(yīng)比) " );choice = a.nextInt();switch(choice) case 1:System. out .println( " 您選擇了 FCFS算法(先來(lái)先服務(wù)) " ); job. paixuFCFS (jobin);break ;case 2:System. out .println( &qu
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 供應(yīng)商入圍資格預(yù)審文件須知3篇
- 延期合同補(bǔ)充條款3篇
- 后澆帶施工合同項(xiàng)目經(jīng)理職責(zé)3篇
- 工程用土方運(yùn)輸規(guī)定樣本
- 發(fā)包方提前終止合同3篇
- 合伙協(xié)議合同合作方合作理念3篇
- 健身中心交接協(xié)議書詳細(xì)版3篇
- 垃圾場(chǎng)施工宣傳合同3篇
- 產(chǎn)品委托生產(chǎn)合同樣本3篇
- 煤氣化過程中的合成氣質(zhì)量分析與調(diào)控方法考核試卷
- 三級(jí)電子商務(wù)師測(cè)試試題庫(kù)與答案
- 2023年高考?xì)v史真題新高考福建卷試題含答案解析
- DZ/T 0430-2023 固體礦產(chǎn)資源儲(chǔ)量核實(shí)報(bào)告編寫規(guī)范(正式版)
- 【農(nóng)業(yè)技術(shù)推廣探究文獻(xiàn)綜述2300字】
- 2024年中鐵集裝箱運(yùn)輸有限責(zé)任公司招聘筆試參考題庫(kù)附帶答案詳解
- 新生兒腸脹氣課件
- 物業(yè)管理中英文對(duì)照外文翻譯文獻(xiàn)
- 專題17浮力與液面升降問題(選擇、填空題)- 中考物理一輪復(fù)習(xí)專題練習(xí)(解析版)
- 《麻醉后蘇醒延遲》課件
- 《物業(yè)客服培訓(xùn)》課件
- 06J403-1 樓梯、欄桿、欄板圖集
評(píng)論
0/150
提交評(píng)論