实验三进程调度实验指导.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验三 作业(进程)调度实验指导 实验目的与要求 本实验的H的是通过作业或进程调度算法模拟设计,进一步加深对作业或进程调度算法的理 解,通过计算平均周转时间和带权平均周转时间,进一步加深对算法的评价方法的理解。 实验预备内容 (1) 学握作业或进程调度算法。 (2) 平均周转吋间和帯权平均周转吋间计算。 实验内容 设定一组作业或进程,给定相关参数,对这组进程或作业按调度算法实施调度,输出调度次 序,并计算平均周转时间和带权平均周转时间。使用的调度算法有: 先来先服务调度算法。 优先级调度算法。 短作业(或进程)优先调度算法。 响应比高优先调度算法 使用的主要数据结构: 定义一个结构体,结构体的主要成员有:序号、作业(进程)号或名称、提交时间、运行时间、 优先数、进入输入井时间、开始运行时间、尚需运行时间、运行结朿时间、周转时间、带权周转 时间、运行次序等。 利用定义的结构体,定义一个结构体数组,用來记录系统中的作业或进程。 算法描述: 1.主控程序算法描述 进程(作业)参数输入 重复执行 选择调度算法 0 1 2 3 4 退出 程序 调用 先来 先服 务调 度程 序 调用 优先 级调 度程 序 调用 短作 业Git 程)调 度程 序 调用 响应 比局 者优 先调 度程 序 输出调度结果 2?数据输入算法 输入进程或作业个数 对每一个进程或作业 输入进程或作业名 输入进程或作业号 输入进程或作业到达时间 输入进程或作业运行时间 输入进程或作业优先级 数据输出算法 对每个作业执行 输出进程(或作业)号、 进程(或作业)名、 到达时间、 开始运行吋间、 运行结束时间、 优先级、 运行次序、 周转时间、 带权周转时间 计算并输出平均周转时间、带权周 转吋间 先来先服务调度算法描述 系统中有未运行的作业 在耒运行的作业中选择一个提 交时间最早的作业 把运行次序填入数组相应位置; 分别计算出该作业进入输入井时 间、开始运行时间、运行结束时 间、周转时间、带权周转时间, 并填入数组相应位置。 调用输出程序输出结果 先來先服务调度算法 5.优先级调度算法 系统中有未运行的作业 在未运行的作业中选择一个优 先级最高的作业 把运行次序填入数组相应位置; 分别计算出该作业进入输入井时 间、开始运行时间、运行结束时 间、周转时间、带权周转时间, 并填入数组相应位置。 调用数据输出程序输出结果 PminG该作业的优先数 (当前最小的) 该作业的在数组中的卜?标 优先级调度算法 6.短作业(或进程)优先调度算法 作业的优先数 // Pnim 比輕 犬小 Pmin^-该作业 的优先数 该作业的 在数组中的下标 冇未运行的作业 优先级最高作业的选择算法 系统中有未运行的作业有未运行的作业 系统中有未运行的作业 有未运行的作业 在未运行的作业屮选择运行时 间最短的作业 把运行次序填入数组相应位置; 分别计算出该作业进入输入井时 间、开始运行时间、运行结束时 间、周转时间、带权周转时间, 并埴入数组相应位置。 Rmin^该作业的运行时间 (当前最短的) 该作业的在数组中的下标 调用输出程序,输出结果短作业(或进程)优先调度算法Rmin-该作业 的运行时间 调用输出程序,输出结果 短作业(或进程)优先调度算法 在数组中的下标 选择运行时间最短作业的算法 7.轮转调度算法 系统中存在未运行完的作业 记录开始时间 首次运行 一^-^一— 记录开始运行时间 计算尚需运行时间 计算运行结束时间 计算周转时间 记录结束次序 计算平均周转时间 输出结果 轮转调度算法 8?响应比高优先调度算法 系统中有未运行的作业 在未运行的作业屮选择一个响应比最 高的作业运行 (响应比相同按先來先服务进行选择) 把运行次序填入数组相应位趕; 分别计算出该作业进入输入井时 间、开始运行时间、运行结束时 间、周转时间、带权周转时间, 并填入数组札I应位置。 调用数据输出程序输出结果 响应比高优先调度算法 用C语言程序实现如下: #incl udestdi o.h # includestring.h #define MAX 10 struct task_struct { int number; /*进程编号*/ char name[10]; /*进程名称*/ float come_time; /* 到达时间 */ float run_begin_time; /* 开始运行时间 */ float run_tirne /*运行时间*/ float run_end_time; /*运彳了结束吋间 */ int priority; /*优先级*/ int order; /*运行次序*/ int fun_flag; /*调度标志*/ }tasks[MAX]; int counter; /*实际进程个数

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档