进程调度算法实验报告.doc

进程调度算法实验报告.doc

ID:50405767

大小:219.00 KB

页数:14页

时间:2020-03-05

进程调度算法实验报告.doc_第1页
进程调度算法实验报告.doc_第2页
进程调度算法实验报告.doc_第3页
进程调度算法实验报告.doc_第4页
进程调度算法实验报告.doc_第5页
资源描述:

《进程调度算法实验报告.doc》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、操作系统实验报告(二)实验题目:进程调度算法实验环境:C++实验目的:编程模拟实现几种常见的进程调度算法,通过对几组进程分别使用不同的调度算法,计算进程的平均周转时间和平均带权周转时间,比较各种算法的性能优劣。实验内容:编程实现如下算法:1.先来先服务算法;2.短进程优先算法;3.时间片轮转调度算法。设计分析:程序流程图:1.先来先服务算法初始化PCB,输入进程信息开始各进程按先来先到的顺序进入就绪队列就绪队列?结束运行运行进程所需CPU时间取消该进程2.短进程优先算法3.时间片轮转调度算法实验代码:1.先来先服务算法#include#defi

2、nen20typedefstruct{ intid;         //进程名 intatime;        //进程到达时间 intruntime;      //进程运行时间}fcs;voidmain(){ intamount,i,j,diao,huan;   fcsf[n]; cout<<"请输入进程个数:"<>amount; for(i=0;i>f[i].id; cin>>f[i].atime; cin>>f[i].run

3、time;  } for(i=0;if[j+1].atime)  {diao=f[j].atime;   f[j].atime=f[j+1].atime;   f[j+1].atime=diao;   huan=f[j].id;   f[j].id=f[j+1].id;   f[j+1].id=huan; 

4、 } } } for(i=0;i#definen5#definenum5#definemax65535typedefstructpro{intPRO_ID;intarrive_time;intsum_time;intf

5、lag;}Pro;//整数排序intbubble(inttemp[]){inti,j,tem=0;for(i=1;itemp[j+1]){tem=temp[j];temp[j]=temp[j+1];temp[j+1]=tem;lastX=0;}}if(lastX==1)break;}returntemp[0];}//进程排序Probubble(Prop[]){inti,j;Protemp={0};Pros[num];for(i=0;i

6、p[i];}for(i=1;is[j+1].sum_time){temp=s[j];s[j]=s[j+1];s[j+1]=temp;lastX=0;}}if(lastX==1)break;}returns[0];}voidSPF(intp){if(n>0){inti,j,k,l,tc=0;Proseq[n];Protemp_seq[n];printf("短进程优先调度算法SPF");printf("请依次输入5个进程的进程号、到达时间和执行时间

7、");printf("成员变量用逗号隔开;进程间用回车隔开");for(i=0;i

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

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

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