


下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
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),語言不限。實(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(" 請輸入工作的個(gè)數(shù): " );Scanner a =new Scanner(System.in );jobnum = a.nextInt();intjobin =newint jobnum 8;for( inti = 0; i <jobnum ; i+) System. out .print(" 請輸入工作 " + (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(" 請選擇您想要那種算法:" );System. out .println("1.FCFS 算法(先來先服務(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算法(先來先服務(wù)) " ); job. paixuFCFS (jobin);break ;case 2:System. out .println( &qu
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/IEC 23090-7:2022/AMD1:2024 EN Information technology - Coded representation of immersive media - Part 7: Immersive media metadata - Amendment 1: Common metadata for imme
- 【正版授權(quán)】 ISO 7718-2:2025 EN Aircraft - Passenger doors interface requirements for connection of passenger boarding bridge or passenger transfer vehicle - Part 2: Upper deck doors
- 【正版授權(quán)】 ISO 16900-11:2025 EN Respiratory protective devices - Methods of test and test equipment - Part 11: Determination of field of vision
- 【正版授權(quán)】 IEC 81355-1:2024 EN/FR Industrial systems,installations and equipment and industrial products - Classification and designation of information - Part 1: Basic rules and clas
- 2025年集成電路代工廠商業(yè)秘密保護(hù)合同
- 2025年動(dòng)力調(diào)諧陀螺平臺(tái)項(xiàng)目建議書
- 提升學(xué)校藝術(shù)教育影響力的策略計(jì)劃
- 醫(yī)院宣傳工作總結(jié)與改進(jìn)方法計(jì)劃
- 班級(jí)傳統(tǒng)文化傳承活動(dòng)的計(jì)劃
- 營養(yǎng)科膳食服務(wù)效果評(píng)估與改進(jìn)計(jì)劃
- 蘇州2025年江蘇蘇州太倉市高新區(qū)(科教新城婁東街道陸渡街道)招聘司法協(xié)理員(編外用工)10人筆試歷年參考題庫附帶答案詳解
- 幼兒園課件:健康教案
- 河南航空港發(fā)展投資集團(tuán)有限公司2025年社會(huì)招聘題庫
- 2025至2031年中國助眠床墊行業(yè)投資前景及策略咨詢研究報(bào)告
- 綿陽市高中2022級(jí)(2025屆)高三第二次診斷性考試(二診)語文試卷(含答案)
- 常州初三強(qiáng)基數(shù)學(xué)試卷
- 物業(yè)服務(wù)和后勤運(yùn)輸保障服務(wù)總體服務(wù)方案
- 《吞咽障礙膳食營養(yǎng)管理規(guī)范》(T-CNSS 013-2021)
- 2025年極兔速遞有限公司招聘筆試參考題庫含答案解析
- 2024年青海省中考生物地理合卷試題(含答案解析)
- 蘇少版小學(xué)一年級(jí)下冊綜合實(shí)踐活動(dòng)單元備課
評(píng)論
0/150
提交評(píng)論