版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、实验二间片轮转RR进程调度算法1、实验目的通过这次实验,加深对进程概念的理解,进一步掌握进程状态的转变、进程调度的策略及对系统性能的评价方法。2、试验内容问题描述:设计程序模拟进程的时间片轮转RR调度过程。假设有n个进程分别在T1,Tn时刻到达系统,它们需要的服务时间分别为S,Sn。分别利用不同的时间片大小q,采用时间片轮转RR进程调度算法进行调度,计算每个进程的完成时间、周转时间和带权周转时间,并且统计n个进程的平均周转时间和平均带权周转时间。3、程序要求:1)进程个数n;每个进程的到达时间和服务时间S,Sn;输入时间片大小q。2)要求时间片轮转法RR调度进程运行,计算每个进程的周转时间和带
2、权周转时间,并且计算所有进程的平均周转时间和带权平均周转时间;3)输出:要求模拟整个调度过程,输出每个时刻的进程运行状态,如“时刻3:进程B开始运行”等等;4)输出:要求输出计算出来的每个进程的周转时间、带权周转时间、所有进程的平均周转时间以及带权平均周转时间。4、需求分析(1)输入的形式和输入值的范围时间片真实进程数各进程的到达时间各进程的服务时间(2)输出的形式模拟整个调度过程、周转时间、带权周转时间、所有进程的平均周转时间以及带权平均周转时间。3)测试用例、作业情况进程名ABCDE平均到达时间01234时间片服务时间43524RR完成时间1210181117q=i周转时间12916813
3、11.6带权周转时间39RR完成时间47181317q=4周转时间461610139.8带权周转时间95、调试分析由于自己自编写代码方面与他人有一定的差距,因此在做实验的过程中我在网上搜了很多相关的资料,了解实现该算法的原理及各部分实现的代码,同时参考了几个别人写好的源代码,然后自己在理解的基础上不断的根据要求修改写程序,不过其中碰见的很多的问题。我已经自己调了好多错误,在一遍遍的调试和修改中,发现自己的经验在快速增长,这个感觉真的很不错。然而,实验的运行结果还不是很完美,每个进程在最后一个时间片的运行过程中,进程列表的更新总是修改错误。不过在在本次试验中学到了不少东西,一点点的在进步。6、测
4、试结果输入时间片,进程数,进程到达时间,服务时间J3JL-j11s201234343524-输出输入时间片,进程数,进程到达时间,服务时间输出terminst&dE_RRJavaApplicationD:developerJavajreTbinjavaw.exe(:时刻ll;进趕C停止运行,加入就绪序列尾;时刻11:逬程曲始运行;时刻1玉进程唉行结束;时刻1玉逬程E开始运行;时刻17:逬程E话行结束;时刻17:进程匚幵始运行;时割1企进程匚话行结束;进程名到达时间朋务时间完成时间周转时间帯权周转时间A0444B13762.0C25181632D3213105.9E4417133.25平均周转时
5、间:9用平均帯稅周转时间:2.88999999999999977、附录(java)packageexperiment;importjava.io.BufferedlnputStream;importjava.io.FilelnputStream;importjava.io.FileNotFoundException;importjava,util.Scanner;publicclassB_RR/声明变量/时间片publicstaticintq二0;/允许的最大进程数publicstaticintMaxNum=100;/真正的进程数publicstaticintrealNum;/order数组的
6、一个下标publicstaticintnumber;/当前时间publicstaticintNowTime;/各进程的达到时间publicstaticintArrivalTime=newintMaxNum;/各进程的服务时间intall_add=1;/就绪队列中的进程个数intall_add=1;/就绪队列中的进程个数publicstaticintServiceTime=newintMaxNum;/各进程的服务时间(用于记录进程服务时间随时间片轮转减少的过程)publicstaticintPServiceTime=newintMaxNum;/各进程的完成时间publicstaticintFin
7、ishTime=newintMaxNum;/各进程的周转时间publicstaticintWholeTime=newintMaxNum;/进程调度队列(存放的是各个进程的数字代号,如进程A数字代号为1)publicstaticintorder=newintMaxNum;/各进程的带权周转时间publicstaticdoubleWeightWholeTime=newdoubleMaxNum;/平均周转时间、平均带权周转时间publicstaticdoubleAverageWT,AverageWWT;/周转时间总和publicstaticintSumWT=0;/带权周转时间总和publicstat
8、icdoubleSumWWT=0;/进程是否已经结束的标志publicstaticbooleanFinished=newbooleanMaxNum;publicstaticScannerstdin;publicstaticvoidmain(Stringargs)throwsFileNotFoundException/从文件中输入数据BufferedInputStreamin=newBufferedInputStream(newFileInputStream(./file/02);System.setIn(in);stdin=newScanner(System.in);q=stdin.nextl
9、nt();/时间片qrealNum=stdin.nextInt();/真实进程数for(inti=0;irealNum;i+)/各进程的服务时间ArrivalTimei=stdin.nextInt();for(intj=0;jq)/进程还未完成PServiceTimeorder0=PServiceTimeorder0-q;/对应的进程的服务时间减去一个时间片NowTime+=q;/现在时刻增加一个时间片System.out.println(时刻+NowTime+:进程+(char)(w+order0)+停止运行,加入就绪序列尾;);else/进程剩一个时间片后结束NowTime+=PServi
10、ceTimeorder0;/现在时间增加一个时间片PServiceTimeorder0=0;/对应进程的服务时间归零System.out.println(时刻+NowTime+:进程+(char)(w+order0)+运行结束;);FinishTimeorder0=NowTime;WholeTimeorder0=NowTime-ArrivalTimeorder0;WeightWholeTimeorder0=1.0*WholeTimeorder0/ServiceTimeorder0;/将到达的程序加入序列尾if(all_addrealNum)for(inti=1;i=ArrivalTimei&F
11、inishedi=false)/判断该进程是否已经在就绪队列中ordernumber+=i;all_add+;Finishedi=true;/将序列首程序调到序列尾inttemp=order0;for(inti二0;inumber-1;i+)/将order中的每个数前移一位orderi=orderi+1;if(PServiceTimetemp=0)/进程已将全部调度结束,通过将order的第一个数标记为100,来结束进程调度order-number=100;else/进程还未调度结束ordernumber-1=temp;doubleall=0,all1=0;for(inti=0;irealNum;i+)/计算总周转时间和总带权周转时间all+=WholeTimei;all1+=WeightWholeTimei;System.out.println(n进程名t到达时间t服务时间t完成时间t周转时间t带权周转时间);for(inti=0;irealNum;i+)System.out.println(char)(i+A)+t+ArrivalTimei+t+Se
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中考物理复习主题单元11第28课时焦耳定律课件
- 冀少版八年级生物上册第五单元第一节细菌课件
- 冀少版八年级生物上册第三单元第二节光合作用的原料课件
- 初三化学第一轮复习教学教案
- 《马诗》教学设计
- 住宅小区监理廉洁自律协议
- 五年级语文下册第二单元教学设计教案
- 木材加工厂工人工作证使用办法
- 船舶制造乳胶漆粉刷施工合同
- 碳基金碳资产管理办法
- 市政污水管网深基坑拉森钢板桩支护专项施工方案
- 固体料仓 (2.26)设计计算
- 青岛东北亚大宗商品交易中心可行性研究报告
- 淘气包马小跳杨红樱
- 八年级科学上册 《生命活动的调节》同步练习1 浙教版
- 硫酸储罐标准
- 平行检查记录(焊接)
- 2023年6月四级听力第一套真题及听力原文
- 消防在心中安全伴我行-中学精创主题班会
- 2023年医师病历书写规范培训课件PPT(医务人员学习资料)
- GB/T 40016-2021基础零部件通用元数据
评论
0/150
提交评论