2022年操作系统短作业优先进程调度算法 .pdf

上传人:Q****o 文档编号:25951079 上传时间:2022-07-14 格式:PDF 页数:3 大小:31.19KB
返回 下载 相关 举报
2022年操作系统短作业优先进程调度算法 .pdf_第1页
第1页 / 共3页
2022年操作系统短作业优先进程调度算法 .pdf_第2页
第2页 / 共3页
点击查看更多>>
资源描述

《2022年操作系统短作业优先进程调度算法 .pdf》由会员分享,可在线阅读,更多相关《2022年操作系统短作业优先进程调度算法 .pdf(3页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、#include #include using namespace std; struct SJF char name6;/ 进程名float arrivetime;/ 到达时间float servicetime;/ 服务时间float starttime;/ 开始执行时间float finishtime;/ 完成时间float zztime;/ 周转时间float dqzztime;/ 带权周转时间; SJF a100; void input(SJF *p,int N) int i; cout 按照进程名到达时间服务时间的格式输入 endl; for(i=0;i=N-1;i+) cout第

2、i+1pi.namepi.arrivetimepi.servicetime; void Print(SJF *p,float arrivetime,float servicetime,float starttime,float finishtime,float zztime,float dqzztime,int N) int k; coutendl 进程的运行状况:endl; cout 进程名到达时间服务时间 开始时间 完成时间周转时间带权周转时间endl; for(k=0;k=N-1;k+) cout pk.name pk.arrivetime pk.servicetime pk.start

3、time pk.finishtime pk.zztime pk.dqzztimeendl; /排序void sort(SJF *p,int N) for(int i=0;i=N-1;i+) for(int j=0;j=i;j+) if(pi.arrivetimepj.arrivetime) SJF temp; temp=pi; pi=pj; pj=temp; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 3 页 - - - - - - - - - /运行阶段void d

4、eal(SJF *p, float arrivetime,float servicetime,float starttime,float finishtime,float &zztime,float &dqzztime,int N) int k; for(k=0;kpk-1.finishtime) pk.starttime=pk.arrivetime; pk.finishtime=pk.arrivetime+pk.servicetime; else pk.starttime=pk-1.finishtime; pk.finishtime=pk-1.finishtime+pk.servicetim

5、e; for(k=0;k=N-1;k+) pk.zztime=pk.finishtime-pk.arrivetime; pk.dqzztime=pk.zztime/pk.servicetime; void SJFf(SJF *p,int N) float arrivetime=0,servicetime=0,starttime=0,finishtime=0,zztime=0,dqzztime=0;sort(p,N); for(int m=0;mN-1;m+) if(m=0) pm.finishtime=pm.arrivetime+pm.servicetime; else pm.finishti

6、me=pm-1.finishtime+pm.servicetime; int i=0; for(int n=m+1;n=N-1;n+) if(pn.arrivetime=pm.finishtime) i+; float min=pm+1.servicetime; int next=m+1;/m+1=n for(int k=m+1;km+i;k+) if(pk+1.servicetimemin)min=pk+1.servicetime; next=k+1; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - -

7、- - - - 第 2 页,共 3 页 - - - - - - - - - SJF temp; temp=pm+1; pm+1=pnext; pnext=temp; deal(p,arrivetime,servicetime,starttime,finishtime,zztime,dqzztime,N); Print(p,arrivetime,servicetime,starttime,finishtime,zztime,dqzztime,N); void main() int N; cout*操作系统实验*endl; cout 短作业优先调度算法endl; coutN; input(a,N); SJF *b=a; SJF *c=a; SJFf(b,N); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 3 页 - - - - - - - - -

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 技术总结

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁