1 学生学号Xxx 实验课成绩学 生 实 验 报 告 书实验课程名称操作系统 C 开课学院计算机科学与技术学院指导教师姓名xxx 学生姓名xxx学生专业班级xxxx2016-- 2017学年第1 学期1 实验课程名称:操作系统 C 实验项目名称处理机调度报告成绩实验者陈硕专业班级计算机 zy1401组别同组者完成日期2016 年 11 月 25 日第一部分:实验分析与设计(可加页)一、实验目的和要求1. 目的掌握处理机调度的相关内容对进程调度算法有深入的理解2. 要求模拟实现进程调度功能任选一种计算机高级语言编程实现选择 1-2 种进程调度算法,例如:先来先服务、短进程优先、最高响应比优先、时间片轮转、优先级法等能够输入进程的基本信息,例如进程名、到达时间和预估运行时间等根据选择的调度算法显示进程的调度顺序显示完成调度后每个进程的开始时间、完成时间和周转时间、 带权周转时间计算平均周转时间和平均带权周转时间二、分析与设计1. 实验原理分析(1) 先来先服务调度算法的基本原理按照作业提交 / 进程变为就绪状态放的先后次序,调入系统或分派CPU,( 即调度程序每次选择的作业或进程是等待时间最久的,而不管其运行时间的长短。) (2) 短进程优先调度算法的基本原理对预计执行时间短的作业(进程)优先处理。通常后来的短作业不抢先正在执行的作业。(3) 优先级调度算法的基本原理对优先级高的作业(进程)优先处理。可分为抢占式和非抢占式。本实验采用非抢占式。(4) 最高响应比优先调度算法的基本原理响应比优先算法是介于FCFS算法和 SJF算法之间的一种折中算法,同时考虑每个作业的等待时间和估计需要运行的时间,从中选出响应比最高的作业投入运行。依据上述的实验目的与要求,可导出实现处理机调度的流程为:① 将作业信息保存到结构体数组中② 设计不同的进程调度算法2 ③用 while 进行循环控制选择不同的算法2. 数据结构的设计记录不同作业信息的结构体数组。 struct node job[100]; 记录作业 / 进程详细信息的结构体typedef struct node { string name; double submit;//提交时间double start;//开始时间double run;//运行时间double end;//完成时间double Ti;//周转时间double Wi;//带权周转时间double H;//响应比int priority;//优先级}*work; 3. 核心算法设计(1) 按提交时间进行排序的算法Input :work p //指向作业的指针 int N //作业的个数Process :void sort (work p...