版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、电 子 科 技 大 学实 验 报 告学生姓名:胡钟文 学 号:2823103010 指导教师:罗惠琼一、实验验室名称称:主楼楼A2-4122二、实验验项目名名称:进进程调度度算法的的设计三、实验验原理:短作业(进程)优先调调度算法法:短作作业调度度算法是是从后备备队列中中选择一一个或者者若干个个估计运运行时间间最短的的作业,将他们们调入内内存运行行。而短短进程优优先调度度算法则则是从就就绪队列列中选出出一个估估计运行行时间最最短的进进程,将将处理机机分配给给它,使使它立即即执行并并一直执执行到完完成,或或者发生生某事件件而被阻阻塞放弃弃处理机机时再重重新调度度。时间片轮轮转法:系统将将所有的的
2、就绪进进程按先先来先服服务的原原则排成成一个队队列,每每次调度度时,把把CPUU分配给给队首进进程,并并令其执执行一个个时间片片。当执执行的时时间片用用完时,由一个个计时器器发出时时钟中断断请求,调度程程序便据据此信号号来停止止该进程程的执行行,并将将它送往往就绪队队列的队队尾;然然后,再再把处理理机分配配给就绪绪队列中中的新的的队首进进程,同同时也让让它执行行一个时时间片。这样就就可以保保证就绪绪队列中中的所有有进程在在一个给给定的时时间内均均能获得得一时间间片的处处理机执执行时间间。四、实验验目的:通过对进进程调度度算法的的设计,深入理理解进程程调度的的原理五、实验验内容:1编写写程序实实
3、现SJJ(P)F算法法2编写写程序实实现RRR算法六、实验验器材(设备、元器件件):装有VCC+66.0的的PC机机一台七、实验验步骤:1打开开VC,设计编编写程序序的源代代码2编译译运行程程序的源源代码3分析析检验程程序的结结果是否否正确4总结结实验结结果及结结论短进程优优先调度度源代码码:#inccludde stddio.hstruuct sjffcharr naame10;floaat aarriivettimee;floaat sservviceetimme;floaat sstarrttiime;floaat ffiniishttimee;floaat zzztiime;floaa
4、t ddqzzztimme;sjf a1100;voidd innputt(sjjf *p,iint N) innt ii;prinntf(inntpuut tthe proocesssss naame & aarriivettimee & serrviccetiime:nffor exmmplee: aa 0 1000n);for(i=00;i=N-1;ii+)prinntf(innputt thhe %dthh prroceesss iinfoormaatioon:n,i+11);scannf(%s%f%ff,&pii.nnamee,&ppi.arrrivvetiime,&pi.serrv
5、iccetiime);voidd Prrintt(sjjf *p,ffloaat aarriivettimee,flloatt seerviicettimee,flloatt sttartttimme,ffloaat ffiniishttimee,flloatt zzztimme,ffloaat ddqzzztimme,iint N)intt k; prrinttf(runn orrderr:); prrinttf(%s,p0.namme);for(k=11;k%s,pkk.nnamee); prrinttf(ntthe proocesssss innforrmattionn:nn); ppr
6、inntf(nnnammettarrriveetsservviceetsstarrtttfinnishhtzzzttdqzzznn); foor(kk=0;k=N-11;k+) prrinttf(%st%-.2fft%-.22ftt%-.2ft%-.2fft%-.22ftt%-.2ftnn,ppk.naame,pkk.aarriivettimee,pk.serrviccetiime,pkk.sstarrttiime,pkk.ffiniishttimee,pk.zzttimee,pk.dqzzztiime);/排序序voidd soort(sjff *pp,innt NN) foor(iint
7、i=00;i=N-1;ii+) ffor(intt j=0;jj=ii;j+)if(ppi.arrrivvetiimepjj.aarriivettimee) sjjf ttempp; teemp=pii; pi=pjj; pj=temmp; /运行行阶段voidd deeal(sjff *pp, ffloaat aarriivettimee,flloatt seerviicettimee,flloatt sttartttimme,ffloaat ffiniishttimee,flloatt &zzztiime,flooat &dqqzzttimee,innt NN) innt kk; forr
8、(k=0;kk=NN-1;k+) iif(kk=00) pkk.sstarrttiime=pkk.aarriivettimee; pk.finnishhtimme=ppk.arrrivvetiime+pkk.sservviceetimme; eelsee pkk.sstarrttiime=pkk-1.fiinisshtiime; pkk.ffiniishttimee=pk-11.ffiniishttimee+pk.serrviccetiime; foor(kk=0;k=N-11;k+) pk.zzttimee=pk.finnishhtimme-ppk.arrrivvetiime; pk.dqz
9、zztiime=pkk.zzztiime/pkk.sservviceetimme; voidd sjjff(sjff *pp,innt NN)flooat arrriveetimme=00,seerviicettimee=0,staartttimee=0,finnishhtimme=00,zzztimme=00,dqqzzttimee=0;/对对结构进进行初始始化sortt(p,N); foor(iint m=00;mN-11;m+) iif(mm=00) ppm.fiinisshtiime=pmm.aarriivettimee+pm.serrviccetiime; eelsee ppm.fi
10、inisshtiime=pmm-1.fiinisshtiime+pmm.sservviceetimme;int i=00; ffor(intt n=m+11;n=N-1;nn+) if(pnn.aarriivettimee=ppm.fiinisshtiime)/判判断内存存中每次次完成之之后有多多少到达达的进程程 i+; flloatt miin=ppm+1.serrviccetiime; innt nnextt=m+1;/m+1=nn foor(iint k=mm+1;kmm+i;k+) /找找出到达达后的进进程中最最小的进进程 if(pkk+1.seerviicettimeemiin) m
11、inn=pk+11.sservviceetimme; nnextt=k+1; sjjf ttempp; ttempp=pm+11; ppm+1=pnnextt; ppneext=teemp; ddeall(p,arrriveetimme,sservviceetimme,sstarrttiime,finnishhtimme,zzztiime,dqzzztiime,N); PPrinnt(pp,arrrivvetiime,serrviccetiime,staartttimee,fiinisshtiime,zzttimee,dqqzzttimee,N);voidd maain() innt NN;
12、pprinntf(-短作作业优先先调度算算法-nn); pprinntf(innputt thhe pproccessss nummberr:nn); sscannf(%d,&NN); iinpuut(aa,N); ssjf *b=a; ssjf *c=a; ssjfff(b,N);时间片轮轮转法源源代码:#inccludde #deffinee M 5 /物理页页数#deffinee Myypriintff priintff(|-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-|n)typeedeff sttrucct PPCBintt IDD;intt ReeachhT
13、imme;intt TootallTimme;PCBB;/进进程号,到达时时间和服服务时间间typeedeff sttrucct NNOTEE /备份intt IDD;intt TootallTimme;NOTTE;PCB AMM; /5个进进程PCB aMM;NOTEE teemp;int queeue50; /记录录调度的的进程int K=00;/调调度进程程数组的的标识voidd INNIT()/初始化化intt i;forr(i=0;iiM;i+)Ai.ID=-1;int GettNumm()/计算算进程数数intt i,j=00;forr(i=0;iiM;i+)iff(Ai.ID!=
14、-11)jj+;retturnn j;int GettReaach(intt tiime)/找找出到达达进程号号intt i;forr(i=0;iiM;i+)iff(ai.ReaachTTimee=ttimee)aai.ReeachhTimme=1100;retuurn i;retturnn -11;int GettInssertt()/找出出插入位位置intt i;forr(i=0;iiM;i+)iff(Ai.ID=-11)rretuurn i;retturnn -11;voidd Foorwaard(intt nuum)/前移移intt i;forr(i=0;iinuum-11;i+)Ai
15、.ID=Aii+1.IDD;Ai.TottalTTimee=Ai+11.TTotaalTiime;Annum-1.ID=-1;voidd Prroceess()/执行进进程queeueK=A00.IID;K+;A00.TTotaalTiime-;temmp.IID=AA0.IDD;temmp.TTotaalTiime=A00.TTotaalTiime;voidd maain()intt i;intt tiime;intt t=0;intt reeachh;intt innserrt;intt nuum;priintff(RRR算法法nn);INIIT();forr(i=0;iiM;i+)prr
16、inttf(请输入入进程IID:);sccanff(%d,&ai.ID);prrinttf(请输入入到达时时间:);sccanff(%d,&ai.ReaachTTimee);prrinttf(请输入入服务时时间:);sccanff(%d,&ai.TottalTTimee);forr(i=0;iiM;i+)/运行时时间t=t+aai.TootallTimme;forr(i=0;ii500;i+)/初始始化quueueei=-11;forr(tiime=0;ttimee=tt;tiime+)reeachh=GeetReeachh(tiime);iff(reeachh!=-1)/有进进程到达达iin
17、seert=GettInssertt();AAinnserrt.ID=arreacch.ID;AAinnserrt.TottalTTimee=areaach.TootallTimme;nnum=GettNumm();iif(nnum=1)conntinnue;/进进程数为为1eelsee/进进程数不不为1Proocesss();Forrwarrd(nnum);if(temmp.TTotaalTiime!=0)Annum-1.ID=temmp.IID;Annum-1.TottalTTimee=teemp.TottalTTimee;ellse/没有有进程到到达nnum=GettNumm();iif
18、(nnum=1)/进进程数为为1Proocesss();if(temmp.TTotaalTiime=0)A00.IID=-1;eelsee iff(nuum=0)conntinnue;/进进程数为为0eelseeProocesss();Forrwarrd(nnum);if(temmp.TTotaalTiime!=0)Annum-1.ID=temmp.IID;Annum-1.TottalTTimee=teemp.TottalTTimee;priintff(n);priintff(调调度顺序序为:n);Myprrinttf;forr(i=0;ii500;i+)iff(quueueei!=-1)pprinntf(|%2d ,qqueuueii);priintff(|n);Mypprinntf;priintff(n);八、实验验数据及及结果分分析:短作业优优先调度度算法的的实验结结果:时间片轮轮转调度度算法结果:九、实验验结论: 本本次实验验成功的的完成了了短作业业优先调调度算法法和轮转转时间片片调度算算法的模模拟,通通过本次次实验我我们了解解到短作作业优先先调度算算法不利利于长作作业的处处理,因因为长作作业将长长期得不不到处理理,而轮轮转时间间片调度度算法则则解决了了这一问问题。短短长作业业均能在在每一个个周期内内分得一一个时间间片处理理自己的的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025夏季四川达州市属国有企业招聘笔试复审期间考生防控注意事项笔试历年参考题库附带答案详解
- 2025中电金投控股有限公司招聘3人笔试历年参考题库附带答案详解
- 关于品牌合作条款的进一步协商的商洽函7篇
- 2026年舟山岱山县衢山镇人民政府公开招聘专职网格员3人考试备考题库及答案详解
- 2026浙江宁波市特种设备检验研究院招聘高层次人才1人考试备考题库及答案详解
- 2026年安徽省宿州市中小学编制教师招聘考试参考试题及答案详解
- 2026重庆市綦江区人民政府三江街道办事处招聘公益性岗位人员11人笔试备考题库及答案详解
- 眉山职业技术学院2026年下半年编制内公开考核招聘辅导员、思政课教师的考试备考试题及答案详解
- 中国谷物脱粒机市场销售前景规模与投资契机剖析研究报告
- 中国耐火保暖材料行业市场发展分析及发展趋势预测与战略投资研究报告
- 理论联系实际谈一谈你对党的十三大所概括的党在社会主义初级阶段的基本路线的理解(二)
- 2025(某大型国企)财务岗位招聘笔试试卷附答案
- 2025年档案专业副硏究馆员考试试题有答案
- 多媒体运营学习方案
- 2026年江苏高科技投资集团招聘面试题及答案
- 2025四川省水电投资经营集团有限公司员工公开招聘1人笔试参考题库附带答案详解
- 初中英语测试练习题06 动词的时态(八大时态模考真题100题)(解析版)
- 智联招聘邮政笔试题库
- 缅怀革命先烈+继承革命遗志+主题班会课件
- 2026年清华附中小升初测试题及答案
- 年产10万吨锻钢件(风电法兰用)量产可行性研究报告
评论
0/150
提交评论