最高响应比调度算法代码

最高响应比调度算法代码

ID:47325360

大小:69.51 KB

页数:9页

时间:2020-01-10

最高响应比调度算法代码_第页
预览图正在加载中,预计需要20秒,请耐心等待
资源描述:

《最高响应比调度算法代码》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、实验四模拟处理机HRRN调度算法一、实验目的:用c++设计HRRN调度算法程序。二、实验内容:本实验随机输入的进程个数、进程名称、进程提交到系统的时间、进程运行所需时间。通过模拟程序。显示以下信息:1)处理机对进程的调度过程。2)计算这N个进程的平均周转时间。三、HRRN(最高响应比调度算法)原理最高响应比调度:在每次调度作业时,先计算后备队中每个作业的响应比,然后挑选响应比高者投入运行。响应比R定义:R=(w+S)/S(R:响应比,W=等待时间,S=运行时间)响应比R=周转时间/运行时间=(运行时间+等待时间)/运行时间=1+(等待时间/运行时间)四、示例如:输入进程个数:5进程名称到

2、达系统时间所需服务时间A03B26C44D65E82显示运行结果:进程名称到达系统时间所需服务时间开始时间结束时间A0303B2639C44913E821315D6515205个进程的平均周转时间:(3+7+9+7+14)/5=8五、运行结果六、代码#include#includetypedefstructNode{charname[10];intinto;intruntime;intstart;intfinish;intstatus;inthrrn;intsum;}Node;intselect(Nodenode[],intn){inti,flag=

3、0;for(i=0;i

4、scanf("%s",node[i].name);scanf("%d",&node[i].into);scanf("%d",&node[i].runtime);getchar();node[i].status=0;if(0==i)node[i].hrrn=0;}while(1){intindex;index=select(node,n);intflag=0;if(index==-1)break;max=0;for(i=0;i

5、==i)node[i].hrrn=0;if(node[i].hrrn>node[max].hrrn)max=i;flag=1;}}if(1==flag){node[max].start=t;t+=node[max].runtime;node[max].status=1;node[max].finish=t;node[max].sum=node[max].finish-node[max].into;}else{t++;}}for(i=0;inode[j+1].finish){Nodetemp=no

6、de[j];node[j]=node[j+1];node[j+1]=temp;}}}printf("进程名称到达系统时间所需服务时间开始时间结束时间");doublesum=0;for(i=0;i

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。