实验课程名称:实验项目名称实验者同组者处理机调度专业班级实验成绩组别实验日期年 月日第一部分:实验分析与设计(可加页)一、实验内容描述(问题域描述)实验目的:掌握处理机调度的相关内容,对进程调度算法有深入理解。实验内容:模拟实现进程调度功能。实验要求:1、 任选一种高级语言实现;2、 选择 1-2 种调度算法;3、 能够输入进程的基本信息,如进程名、提交时间、预估运行时间等;4、 根据选择的调度算法显示进程调度顺序;5、 显示完成调度后每个进程的开始时间、完成时间呢、周转时间,带权周转时间;6、 计算平均周转时间和平均带权周转时间。二、实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述)数据结构:一个作业的描述结构:struct WORK{int num;//进程序号float startTim;//开始时间float upTim;//提交时间float offTim;//结束时间float costTim;//耗费时间长度float Ti;//周转时间float Tr;//带权周转时间};功能框图及功能说明:主函模块先入先出算法模输入模块返回拟模块调用调用相关时间计算模返回处理机调度函数块调用调用模块调用短进程优先算法返回返回模拟模块输出模块功能说明:输入模块、输出模块:负责进程的输入及模拟结果的输出;处理机调度函数调用模块:选择调用算法完成进程调度;先入先出算法模拟模块、短进程优先算法模拟模块:实际完成模拟调度功能;相关时间计算模块:计算开始时间、结束时间,周转时间,带权周转时间。三、主要仪器设备及耗材硬件:pc 机;软件:windows2007 旗舰版、VS 2010 开发环境。第二部分:实验调试与结果分析(可加页)一、实验源程序:# include using namespace std;struct WORK{int num;//进程序号float startTim;//开始时间float upTim;//提交时间float offTim;//结束时间float costTim;//耗费时间长度float Ti;//周转时间float Tr;//带权周转时间};void FIFO(WORK *workspace,int workNum);void SJF(WORK *workspace,int workNum);void SUM(WORK *workspace,int workNum,float *T,float *W);int main(){int num;float upTim;float costTim;int workNum;cout<<"请输入需要被调度的作业的数目:"<>workNum;WORK *workspace=new WORK[workNum];cout<<"请依次输入需要被调度的作业(输入格式:作业序号作业提交时间(用数字表示)执行时间):"<