进程调度实验程序

进程调度实验程序

ID:21737194

大小:51.50 KB

页数:6页

时间:2018-10-24

进程调度实验程序_第1页
进程调度实验程序_第2页
进程调度实验程序_第3页
进程调度实验程序_第4页
进程调度实验程序_第5页
资源描述:

《进程调度实验程序》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、进程调度算法#include"stdio.h"#defineN50intn;intsj;structGzuo{intid;//进程名字intdt;//到达时刻intst;//服务时间intwct;//完成时刻intst2;//标志是否完成floatzt;//周转时间floatdczt;//带权周转时间};Gzuoa[N];voidinput(Gzuoa[]){printf("请输入进程个数:");scanf("%d",&n);for(inti=0;i

2、f("t服务时间:");scanf("%d",&a[i].st);a[i].st2=a[i].st;printf("");}printf("t请输入时间片大小(0=0;j--){for(i=0;ia[i+1].dt){min=a

3、[i].dt;a[i].dt=a[i+1].dt;a[i+1].dt=min;min=a[i].st;a[i].st=a[i+1].st;a[i+1].st=min;min=a[i].st2;a[i].st2=a[i+1].st2;a[i+1].st2=min;min=a[i].id;a[i].id=a[i+1].id;a[i+1].id=min;}}}time=a[0].dt;//printf("赋值后TIME值为:%d",time);min=0;//控制5个进程循环while(min

4、0&&a[i].dt<=time)flag=false;}for(i=0;i0){if(a[i].dt<=time){a[i].st2=a[i].st2-sj;//printf("当前a[%d].st2值为:%d",i,a[i].st2);printf("运算后当前a[%d].st2值为:%d",i,a[i].st2);剩余所需服务时间time=time+sj;//printf("当前TIME值为:%d",time);printf("增加之后TIME值为:%d",time);//已服务时间if(a[i].s

5、t2<=0){a[i].wct=time+a[i].st2;a[i].zt=(float)(a[i].wct-a[i].dt);//周转=完成-到达a[i].dczt=a[i].zt/a[i].st;//带权=周转/服务min++;}}elseif(flag){for(i=0;i0&&a[i].dt>time){time=a[i].dt;break;}}}}}}printf("进程:到达时间t服务时间t完成时间t周转时间t带权周转时间");sum1=0;sum2=0;for(j=0;j

6、(i=0;i

7、m2;for(j=n-1;j>=0;j--){for(i=0;ia[i+1].dt){min=a[i].dt;a[i].dt=a[i+1].dt;a[i+1].dt=min;min=a[i].st;a[i].st=a[i+1].st;a[i+1].st=min;min=a[i].id;a[i].id=a[i+1].id;a[i+1].id=min;}}}a[0].wct=a[0].st+a[0].dt;a[0].zt=(float)a[0].st;

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

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

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