




已阅读5页,还剩19页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
课 程 设 计 报 告 课程名称课程名称 计算机操作系统教程计算机操作系统教程 课题名称课题名称 作业调度模拟作业调度模拟 专专 业业 通信工程通信工程 班班 级级 1302 学学 号号 19 姓姓 名名 舒朋舒朋 指导教师指导教师 颜国风颜国风 2016 年年 6 月月 24 日日 湖南工程学院 课 程 设 计 任 务 书 课程名称 计算机操作系统教程 课 题 作业调度模拟 专业班级 通信工程 1302 学生姓名 舒朋 学 号 19 指导老师 颜国风 审 批 任务书下达日期 2016 年 6 月 17 日 任务完成日期 2016 年 6 月 24 日 1 设设计计内内容容与与设设计计要要求求 1 1 设计内容设计内容 1 1 1 银行家算法设计银行家算法设计 设计要求 编制银行家算法通用程序 并检测所给状态的系统安全性 设进程 I 提出 请求 Request N 则银行家算法按如下规则进行判断 1 如果 Request N NEED I N 则转 2 否则 出错 2 如果 Request N needtime 进程每执行一次 优先数减 3 CPU 时间片数加 1 进程还 需要的时间片数减 1 在轮转算法中 采用固定时间片 即 每执行一次进程 该进程的执行时间片数为已执行了 2 个单位 这时 CPU 时间片数加 2 进程 还需要的时间片数减 2 并排列到就绪队列的尾上 对于遇到优先数一致的情况 采用FIFO策略解决 1 1 4 临界区资源模拟临界区资源模拟 设计要求 建立三个进程 模拟进入临界区 然后用一个进程进行管理 设计技术参数 1 实现 UP DOWN 原语 2 产生 3 个进程 两个进程模拟需要进入临界区的用户进程 当需要进入临界区时 显示 进程 x 请求进入临界区 同时向管理进程提 出申请 申请返回 表示进入了临界区 在临界区中等待一段随机时间 并显 示 进程 x 正在临界区 当时间结束 显示 进程 x 退出临界区 同时向管理进程提出退出申请 当申请返回 显示 进程 x 已退出临界区 3 一个进程作为原语的管理进程 接受其他进程的临界区进入请求 如果允许进入 则根据 DOWN 原语的操作步骤设置相应变量 然后返回 如果不允许进入 则进入循环等待 直到允许为止 退出时模拟 UP 操作 4 进程间通信可以采用信号 消息传递 管道或网络通信方式 1 1 5 作业调度模拟作业调度模拟 设计要求 1 加深对作业概念地理解 2 掌握短作业优先调度算法 3 深入了解批处理系统如何组织作业 管理作业和调度作业 4 了解作业控制块的作用 以及作业控制块的内容和组织方式 设计技术参数 利用作业控制块将系统中的作业组织起来 为了将系统中的作业组织起来 需要为每个进入系统的作业建立档案以记 录和作业相关的信息 例如作业名 作业所需要的资源 作业执行的时 作业 进入系统的时间 作业信息在存储器中的位置 指向下一个作业控制块的指针 等信息 这个记录作业相关信息的数据块称为作业控制块 JCB 并将系统中 等待作业调度的作业控制块组织成一个队列 这个队列称为后备队列 当一个 作业全部信息进入系统后 就为其建立作业控制块 并挂入后备队列中 当一 个作业全部进入系统后 就为其建立作业控制块 并挂入后备队列中 当进行 作业调度时 从后备队列中查找选择作业 利用短作业优先算法进行作业调度 在从后备队列中查找选择作业时 先根据作业控制块中的信息 选中一个短作 业 也就是执行时间最短的作业 将它们调入内存运行 1 2 选题方案 选题方案 所选题目根据学号确定 学号模 5 加 1 即 学号 5 1 如你的学号 为 10 则所选题目号为 10 5 1 1 题目 1 注意 所有的课题都要求 用图形方式演示步骤和结果 有兴趣的同学可以自己针对通信系统课程的要 求 设计一个简单的通信系统 但要预先告知老师 经过审批 方可确定课 题 并且每班的自拟题目的总数量不能超过 4 个 每个课题只能一人单独完 成 1 3 设计要求 设计要求 1 3 1 课程设计报告规范课程设计报告规范 1 系统分析 a 系统功能分析 b 算法分析 c 输入输出的要求 2 系统设计 a 系统由哪些模块 组件 元件 组成以及模块之间的关系 每个模 块的功能 b 采用 C 语言设计 c 画出各函数的调用关系图 主要函数的流程图 3 调试分析以及设计体会 a 测试数据 准备典型的测试数据和测试方案 包括正确的输入及 输出结果和含有错误的输入及输出结果 b 程序调试中遇到的问题以及解决问题的方法 c 课程设计过程经验教训 心得体会 4 使用说明 用户使用手册 说明如何使用你编写的系统 详细列出每一步的操作 步骤 5 书写格式 a 设计报告要求用 A4 纸打印成册 b 一级标题用 3 号黑体 二级标题用四号宋体加粗 正文用小四号宋 体 行距为 22 7 附录 a 源程序清单 带注释 1 3 2 考核方式考核方式 指导老师负责验收程序的运行结果 并结合学生的工作态度 实际动手能 力 创新精神和设计报告等进行综合考评 并按优秀 良好 中等 及格和不 及格五个等级给出每位同学的课程设计成绩 具体考核标准包含以下几个部分 1 平时出勤 占 10 2 系统需求分析 功能设计 数据结构设计及程序总体结构合理与否 占 10 3 程序能否完整 准确地运行 个人能否独立 熟练地调试程序 占 40 4 设计报告 占 30 注意 不得抄袭他人的报告 或给他人抄袭 一旦发现 成绩为零分 5 独立完成情况 占 10 1 3 3 课程验收要求课程验收要求 1 运行所设计的系统 2 回答有关问题 3 提交课程设计报告 4 提交软盘 源程序 设计报告文档 5 依内容的创新程度 完善程序情况及对程序讲解情况打分 2 进度安排进度安排 2 1 通信工程通信工程 1301 02 班 班 第 17 周 星期一 14 30 18 30 上课 讲解分配课题 星期二 14 30 18 30 上机 星期三 8 00 12 00 上机 星期四 8 00 12 00 上机 星期五 交课程设计报告 附 课程设计报告装订顺序 封面 任务书 目录 正文 评分 附件 A4 大小的图纸及程序清单 正文的格式 一级标题用 3 号黑体 二级标题用四号宋体加粗 正文用小四号宋体 行距为 22 正文的内容 一 课题的主要功能 二 课题的功能模块的划分 要求画出模块图 三 主要功能的实现 至少要有一个主要模块的流程图 四 程序调试 五 总结 六 附件 所有程序的原代码 要求对 程序写出必要的注释 目 录 一 系统分析 1 二 系统设计 1 2 1 设计的基本原理 1 2 2 系统的总体框架设计 2 三 系统详细设计 3 3 1 系统设计流程图如下 3 3 2 主函数设计 3 3 3 数据结构设计 4 3 4 算法设计 5 四 程序运行及调试结果 6 4 1 短时间优先算法执行过程 6 4 2 运行结果 7 四 设计总结 7 五 附录 8 0 一 系统分析 作业可被看做是用户向计算机提交任务的任务实体 作业调度具有各种功 能 可以记录系统中各个作业的状况 包括执行阶段的有关情况 从后备队列 中挑选出一部分作业投入执行 为被选中作业做好执行前的准备工作 在作业 执行结果时做善后处理工作 一个作业从输入初始数据到得到计算结果 要经过若干个步骤的相继执 行 例如 编辑 编译 运行等 其中每一个步骤称作一个作业步 用户向 系统提出作业加工步骤的方式称作业控制方式 作业控制方式有两种 终端 控制方式和批处理控制方式 在批处理控制方式下 用户采用系统提供的作 业控制语言写好作业说明书 说明作业加工的步骤 操作员把一批作业组织 成输入流 通过 预输入 手段使每个作业的信息暂存在辅助存储器的 输入井 中 批处理多道操作系统的作业管理有两个任务 作业调度和作业控制 采 用多道程序设计方法的操作系统 在系统中要经常保留多个运行的作业 以 提高系统效率 作业调度从系统已接纳的暂存在输入井中的一批作业中挑选 出若干个可运行的作业 并为这些被选中的作业分配所需的系统资源 对被 选中运行的作业必须按照它们各自的作业说明书规定的步骤进行控制 二 系统设计 2 12 1设计的基本原理设计的基本原理 在多道程序环境下 将系统中的作业组织起来 需要为每个进入系统的作 业建立档案以记录和作业相关的信息 例如作业名 作业所需要的资源 作业 执行的时 作业进入系统的时间 作业信息在存储器中的位置 指向下一个作 业控制块的指针等信息 这个记录作业相关信息的数据块称为作业控制块 JCB 并将系统中等待作业调度的作业控制块组织成一个队列 这个队列称 为后备队列 当一个作业全部信息进入系统后 就为其建立作业控制块 并挂 入后备队列中 当一个作业全部进入系统后 就为其建立作业控制块 并挂入 后备队列中 当进行作业调度时 从后备队列中查找选择作业 短作业优先的调度算法是从后备队列中选择一个或若干个估计运行时间最 短的作业 将它们调入内存运行 1 2 22 2系统的总体框架设计系统的总体框架设计 编写程序完成批处理系统中的作业调度 要求采用短作业优先的作业调度 算法 其包括 首先确定作业控制块的内容和组成方式 然后完成作业调度 最后编写主函数对所做工作进程测试 具体包括以下模块 信息输入模块 随 机产生作业到达时间和服务时间模块 计算模块 比较模块 输出模块 2 32 3系统功能模块图系统功能模块图 作业调度系统主函数 信 息 输 入 模 块 随机 产生 作业 到达 时间 和服 务时 间 计 算 模 块 比 较 模 块 输 出 模 块 2 三三 系统详细设计系统详细设计 3 13 1系统设计流程图如下 系统设计流程图如下 图 2 算法总体流程图 其中int fcfs 函数功能 按最短时间优先的原则选择未被选过的作业返回值 选中作业返回1 否则返回0 3 23 2主函数设计主函数设计 void main int option printf 作业调度模拟 n 3 printf 1 使用短作业优先 n printf 0 退出 n printf n system cls system color 1f scanf d switch option case 0 printf 运行结束 n break case 1 printf 对进程用短作业优先调度 n n Pinput SJF Poutput break 3 3 3 3 数据结构设计数据结构设计 数据结构设计主要是对作业建立结构体 实现对作业的存储和管理 设计过 程如下 struct Process struct int Number 进程编号 char Name MaxNum 进程名称 float ArrivalTime 到达时间 float ServiceTime 开始运行时间 float FinishTime 运行结束时间 float WholeTime 运行时间 int run flag 调度标志 int order 运行次序 4 double WeightWholeTime 周转时间 double AverageWT FCFS AverageWT SJF 平均周转时间 double AverageWWT FCFS AverageWWT SJF 平均带权周转时间 Process MaxNum 3 3 4 4 算法设计算法设计 短作业优先调度算法 是指对短作业优先调度的算法 短作业优先的调度 算法是从后备队列中选择一个或若干个估计运行时间最短的作业 将它们调入 内存 其算法核心函数是int SJF 即最短时间优先算法 int N 实际进程个数 int SJF 短作业优先 int SJF 短作业优先算法 float temp time 0 当期那时间 int i 0 j int number schedul temp counter 进程编号 当前已执行进程 个数 float run time run time Process i WholeTime j 1 while j N i j j 查找下一个被调度的进程 对找到的下一个被调度的进程求相应的参数此模块是 将作业表的信 5 息复制给数组y M 四 程序运行及调试结果 4 4 1 1 短时间优先算法执行过程短时间优先算法执行过程 请依次输入作业信息 进程个数 进程名称 到达时间 服务时间 进程1 进程名称asdf 到达时间10 服务时间3 进程2 进程名称qwer 到达时间18 服务时间9 进程3 进程名称dgfh 到达时间24 服务时间10 进程4 进程名称fgjg 到达时间28 服务时间20 进程5 进程名称dfhr 到达时间35 服务时间1 图 3 短时间优先算法执行图 6 4 24 2运行结果 运行结果 图 4 最短时间优先算法运行结果 四 设计总结 我这次课程设计的课题是作业调度模拟 在开始做课设时我对操作系统如 何用高级语言来实现很不了解 最后不得不自己查相关资料 在经过了翻阅资 料 网上查询并和同学讨论后我对作业调度有了一定的了解 通过温习理论知 识 我了解了作业调度主要是完成作业从后备状态到执行状态的转变 以及从 执行状态到完成状态的转变 短作业优先调度算法的原理是从后备队列中选择 一个或者若干个估计运行时间最短的作业 将它们调入内存运行 总体来说 本次课程设计是比较成功的 虽然课设中遇到了各种问题 但 是最终在自己的努力下还是把问题有效地解决了 让我收获良多 在课设中我 不断巩固课堂所学的理论知识 加深了对作业调度的理解 掌握了短作业优先 调度算法 深入学习了批处理系统如何组织作业 管理作业和调度作业 并了 解了作业控制块的作用以及其内容和组织方式 在课设中培养的自学及钻研能 力在以后的工作中将帮助我很好的克服困难 顺利完成工作 同时 我也体会 到实践来源于理论而又深于理论 我们只有学好理论知识才能更加顺利的完成 实践 只有通过实践才能强化理论知识 在以后的学习中 要培养自己的动手 能力和逻辑思维能力 不断学习 不断进步 7 五 附录 源程序代码 include define MaxNum 100 using namespace std struct Process struct int Number 进程编号 char Name MaxNum 进程名称 float ArrivalTime 到达时间 float ServiceTime 开始运行时间 float FinishTime 运行结束时间 float WholeTime 运行时间 int run flag 调度标志 int order 运行次序 double WeightWholeTime 周转时间 double AverageWT FCFS AverageWT SJF 平均周转时间 double AverageWWT FCFS AverageWWT SJF 平均带权周转时 间 Process MaxNum int N 实际进程个数 int SJF 短作业优先 int SJF 短作业优先算法 float temp time 0 当期那时间 int i 0 j int number schedul temp counter 进程编号 当前已执行进程 个数 float run time run time Process i WholeTime j 1 while j N i j j 查找下一个被调度的进程 对找到的下一个被调度的进程求相应的参数 number schedul i Process number schedul ServiceTime Process number schedul Ar rivalTime Process number schedul FinishTime Process number schedul Ser viceTime Process number schedul WholeTime Process number schedul run flag 1 temp time Process number schedul FinishTime Process number schedul order 1 temp counter 1 while temp counter N for j 0 j N j if Process j ArrivalTime temp time number schedul j break 9 for j 0 j N j if Process j ArrivalTime temp time number schedul j 查找下一个被调度的进程 对找到的下一个被调度的进程求相应的参数 Process number schedul ServiceTime temp time Process number schedul FinishTime Process number schedul Service Time Process number schedul WholeTime Process number schedul run flag 1 temp time Process number schedul FinishTime temp counter Process number schedul order temp counter return 0 int Pinput 进程参数输入 int Poutput 调度结果输出 void main int option printf 作业调度模拟 n 10 printf 1 使用短作业优先 n printf 0 退出 n printf n system cls system color 1f scanf d switch option case 0 printf 运行结束 n break case 1 printf 对进程用短作业优先调度 n n Pinput SJF Poutput break int Pinput 进程参数输入 int i printf 请输入进程个数 n scanf d for i 0 i N i printf n printf 请输入一个进程 n i 1 printf 请输入进程名称 n 11 scanf s Process i Name printf 请输入到达时间 n scanf f printf 请输入服务时间 n scanf f Process i ServiceTime 0 Proces
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024年临床执业医师经典例题含答案详解【黄金题型】
- 高校教师资格证之《高等教育法规》全真模拟模拟题附参考答案详解(精练)
- 2024年职称计算机考前冲刺练习试题【能力提升】附答案详解
- 上海安全员考及答案职责
- 2024焊工考试通关考试题库附答案详解【黄金题型】
- 2025年执业兽医答题题库及答案
- 2025年煤炭经营考试试题及答案
- 2025年四川语文高考试题及答案
- 自考专业(公共关系)试题(易错题)附答案详解
- 2025股份公司入股合同范本参考
- 研学导师培训课件模板
- 人教版小学数学五年级上册 4 可能性 全国获奖
- 人教版小学数学四年级上册《第二单元练习题》
- 养殖场走访方案
- 上海西门妇孺医院研究(1884-1952)
- 劳动创造美好生活课件 第二课 璀璨的星空
- 《新纲要云南省实验教材 信息技术 四年级第3册(第2版)》教案(全)
- 单元12 市场营销计划、组织、执行与控制
- 使用林地可行性研究报告
- JTGT D 65-05-2015 公路悬索桥设计规范正式版
- (样表)有限空间有毒有害气体检测表
评论
0/150
提交评论