- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验一先来先服务FCFS和短作业优先SJF进程调度算法班级:2013级软件3班姓名:陈夏玲学号:1325112005【实验目的】:通过这次实验,加深对进程概念的理解,进一步掌握进程状态的转变、进程调度的策略及对系统性能的评价方法。【实验内容】1、需求分析输入的形式和输入值的范围;进程的个数num:大于0的整数进程的到达时间ArrivalTime[i]:大于等于0的整数进程的服务时间ServiceTime[i];大于0的整数(2) 输出的形式输出计算出来的每个进程的周转时间、带权周转时间、所有进程的平均周转时间以及带权平均周转时间。(3) 程序所能达到的功能;先来先服务FCFS和短作业优先SJF分别调度进程运行,计算每个进程的周转时间和带权周转时间,并且计算所有进程的平均周转时间和带权平均周转时间(4) 测试数据,包括正确的输入及其输出结果和含有错误的输入及其输出结果。2、概要设计设计程序模拟进程的先来先服务FCFS和短作业优先SJF调度过程。假设有n个进程分别在T1, … ,Tn时刻到达系统,它们需要的服务时间分别为S1, … ,Sn。分别采用先来先服务FCFS和短作业优先SJF进程调度算法进行调度,计算每个进程的完成时间、周转时间和带权周转时间,并且统计n个进程的平均周转时间和平均带权周转时间。变量初始化;接收用户输入n,T1, … ,Tn,S1, … ,Sn;算法选择1-FCFS,2-SJF;按照选择算法进行进程调度,计算进程的完成时间、周转时间和带权周转时间;计算所有进程的平均周转时间和平均带权周转时间;按格式输出调度结果。3、详细设计 2个算法void FCFS(int *ArrivalTime, int *ServiceTime, int num){int i = 0;int j = 0;int *FinishTime = new int[num];int *WholeTime = new int[num];double *WeightWholeTime = new double[num];double AverageWholeTime = 0;double AverageWeightWholeTime = 0;int lastFinishTime = 0;for (i = 0; inum; i++){if (ArrivalTime[i]lastFinishTime){FinishTime[i] = ArrivalTime[i] + ServiceTime[i];}else{FinishTime[i] = lastFinishTime + ServiceTime[i];}lastFinishTime = FinishTime[i];WholeTime[i] = FinishTime[i] - ArrivalTime[i];WeightWholeTime[i] = WholeTime[i] / (double)ServiceTime[i];}cout 完成时间为: endl;for (i = 0; inum; i++){cout FinishTime[i] ;}cout endl;cout 周转时间如下: endl;int allWholeTime = 0;for (i = 0; inum; i++){allWholeTime = allWholeTime + WholeTime[i];cout WholeTime[i] ;}cout endl;AverageWholeTime = allWholeTime / (double)num;cout 平均周转时间为: AverageWholeTime endl;cout 带权周转时间如下: endl;double allWeightWholeTime = 0;for (i = 0; inum; i++){allWeightWholeTime = allWeightWholeTime + WeightWholeTime[i];cout WeightWholeTime[i] ;}cout endl;AverageWeightWholeTime = allWeightWholeTime / num;cout 平均带权周转时间为: AverageWeightWholeTime endl;cout endl;}void SJF(int *ArrivalTime, int *ServiceTime, int num){int i = 0;int j = 0;bool *done = new bool[num];int *copyArrivalTime = new int[num];for (i = 0; inum; i++){
您可能关注的文档
最近下载
- 2024-2025学年浙江省宁波市奉化区七年级下学期期末数学检测试卷.pdf VIP
- 让改革创新成为青春远航的动力.ppt VIP
- 通桥(2016)8388A 高速铁路常用跨度梁桥面附属设施.docx VIP
- 新版道德与法治三年级上册《5.走近科学家》教学设计.docx VIP
- 幼儿园课件:《牵牛花和它的朋友们》.pptx VIP
- CBT 3495.10-1995 船舶工业档案管理规则 档案收集及其业务指导要求-行业标准.pdf VIP
- 小学教育学 第二章 学校.ppt VIP
- 人美版七年级上册2.3《诗意的色彩》教案.pdf VIP
- 2024年秋新改版教科版五年级上册科学全册教案教学设计(新课标版).docx VIP
- 安全导则发布稿.pdf VIP
文档评论(0)