操作系统优秀课程设计优质报告进程调度.docx
《操作系统优秀课程设计优质报告进程调度.docx》由会员分享,可在线阅读,更多相关《操作系统优秀课程设计优质报告进程调度.docx(32页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、序言 操作系统(Operating System,简称OS)是管理和控制计算机硬件和软件资源计算机程序,是直接运行在“裸机”上最基础系统软件,任何其它软件全部必需在操作系统支持下才能运行。操作系统是用户和计算机接口,同时也是计算机硬件和其它软件接口。操作系统功效包含管理计算机系统硬件、软件及数据资源,控制程序运行,改善人机界面,为其它应用软件提供支持,让计算机系统全部资源最大程度地发挥作用,提供多种形式用户界面,使用户有一个好工作环境,为其它软件开发提供必需服务和对应接口等。实际上,用户是不用接触操作系统,操作系统管理着计算机硬件资源,同时根据应用程序资源请求,分配资源,如:划分CPU时间,内
2、存空间开辟,调用打印机等。操作系统关键功效是资源管理,程序控制和人机交互等。计算机系统资源可分为设备资源和信息资源两大类。设备资源指是组成计算机硬件设备,如中央处理器,主存放器,磁盘存放器,打印机,磁带存放器,显示器,键盘输入设备和鼠标等。信息资源指是存放于计算机内多种数据,如系统软件和应用软件等。操作系统在底层硬件和用户之间,是二者沟通桥梁。用户能够经过操作系统用户界面,输入命令。操作系统则对命令进行解释,驱动硬件设备,实现用户要求。此次课程设计我们将对上学期所学知识进行系统应用,而达成巩固知识作用目录1问题概述22需求分析23 概要设计23.1关键功效23.2 模块功效结构33.3 软硬件
3、环境33.4数据结构设计34 具体设计44.1“先来先服务(FCFS)调度算法”44.2“短进程调度算法(SPF)”64.3“高响应比优先调度算法”84.4“优先级调度(非抢占式)算法”105 系统测试及调试125.1测试125.2调试过程中碰到问题136 心得体会147 参考文件158 附录161问题概述编写一个进程调度程序,允很多个进程并发实施。采取多个进程调度算法(先来先服务(FCFS)调度算法,短进程调度算法(SPF),高响应比优先调度算法,优先级调度(非抢占式)算法)。分析比较各个算法优缺点。2需求分析进程调度功效是统计系统中全部进程实施情况、从就绪态队列中选择一个进程,进行进程上下
4、文切换。采取不一样算法依据外部环境及条件进行进程切换。3 概要设计3.1关键功效进程调度功效是统计系统中全部进程实施情况、从就绪态队列中选择一个进程,进行进程上下文切换。采取先来先服务(FCFS)调度算法,短进程调度算法(SPF),高响应比优先调度算法,优先级调度(非抢占式)算法进行进程切换。3.2 模块功效结构主界面1进程信息输入2先来先服务算法3短进程调度算法4高响应比优先调度算法5优先级调度算法0退出 图3.2系统结构图3.3 软硬件环境本程序所适用计算机系统软硬件环境要求为:硬件环境: PentiumIII500以上 内存:256M软件环境: Linux Windows 7 应用软件:
5、 Dev-C+3.4数据结构设计struct PCB_structchar name10; /进程名称int priority; /优先级 int number; /进程编号float come_T; /抵达时间float run_begin_T; /开始运行时间float run_end_T; /结束运行时间float run_T; /运行时间int order; /运行次序 int run_flag; /调度标志 PCBMAX;4 具体设计4.1“先来先服务(FCFS)调度算法”4.1.1具体方法 先来先服务算法是根据进程抵达前后次序来进行调度。进入该函数后读取每个进程控制块PCB中抵达时
6、间come_T 从come_T最早开始运行,依次运行完成。统计开始运行时间run_begin_T和结束运行时间run_end_T,并统计运行次序。最终调用调度结果输出函数,输出进程信息和平均周转时间和平均带权周转时间。4.1.2运行结果图4.1.2“先来先服务调度算法”运行结果图4.1.3系统步骤图图4.1.3“先来先服务(FCFS)调度算法”4.2“短进程调度算法(SPF)” 4.2.1具体方法 短进程调度算法是指对短进程优先调度算法,这里进程长短是以进程要求运行时间长短来衡量。 进入该函数后读取每个进程控制块中抵达时间come_T,选择最早,若时间相同则选运行时间最短进程进行调度,统计开始
7、运行时间run_begin_T和结束运行时间run_end_T,并统计运行次序。一个进程运行完成后,在查看在此进程运行时间内抵达进程,选择运行时间最短运行,依次反复,直至全部进程运行完成,最终调用调度结果输出函数,输出进程信息和平均周转时间和平均带权周转时间。 4.2.2运行结果图4.2.2“短进程调度算法”运行结果图4.2.3系统步骤图图4.2.3短进程调度算法(SPF)步骤图4.3“高响应比优先调度算法”4.3.1具体方法 响应比高者进程优先算法,响应比定义是指 R=(已等候时间+服务要求时间)/要求服务时间。实际上,高响应比优先调度算法是先来先服务调度算法和短作业优先调度算法综合调度算法
8、。 进入该函数后读取每个进程控制块中抵达时间come_T,选择最早,统计开始运行时间run_begin_T和结束运行时间run_end_T,并统计运行次序。运行结束后,在查看在此进程运行时间内抵达进程,选择响应比最高进程运行,依次反复,直至全部进程运行完成,最终调用调度结果输出函数,输出进程信息和平均周转时间和平均带权周转时间。 4.3.2运行结果图4.3.2“高响应比优先调度算法”运行结果图4.3.3系统步骤图图4.3.3“高响应比优先调度算法”步骤图4.4“优先级调度(非抢占式)算法”4.4.1具体方法 优先级调度算法也成优先权调度算法,此次采取非抢占式优先级算法,在进程输入时确定进程优先
9、级,数字越大优先等级越高。 进入该函数后读取每个进程控制块中抵达时间come_T,选择最早,若时间相同则选优先等级高进程进行调度,统计开始运行时间run_begin_T和结束运行时间run_end_T,并统计运行次序。一个进程运行完成后,在查看在此进程运行时间内抵达进程,选择优先等级高者进程运行,依次反复,直至全部进程运行完成,最终调用调度结果输出函数,输出进程信息和平均周转时间和平均带权周转时间。 4.4.2实施结果图4.4.2“优先级调度(非抢占式)算法”运行结果图4.4.3系统步骤图图4.4.3“优先级调度(非抢占式)算法”步骤图5 系统测试及调试 5.1测试5.1.1 实际测试数据表5
10、.1.1实际测试数据5.1.2预期结果表5.1.2预期结果数据5.1.3实际运行结果表5.1.3实际运行结果数据5.1.4测试结论分析在这组测试数据中,当进程采取短进程调度优先时,平均带全周转时间最短,效率最好。但因为进程数据不一样,我们能够采取不一样调度算法,应视情况而选择最好调度算法。5.2调试过程中碰到问题5.2.1算法切换时参数初始化问题因为该程要实现进程调度中多个关键算法调度演示,并计算周转时间进行比较,那么就需要在一组进程上调用不一样算法,并可反复使用该数组。不过当从一个算法转换到另一个算法时候,包含到部分关键变量初始化问题。一开始我并没有注意到这个问题,造成运行下一个算法时,因经
11、过一次调度后,全部进程状态全部为实施完成,所以第二次和往后全部不能得出正确结论。经过数次测试后,在每个算法子函数中加入,状态初始化语句,使得程序能以正常运行,得出正确数据。5.2.2输出数据时显示不全且乱输出是开始时做函数,然而就碰到了挺烦困难,因为每个进程数据项多且杂,输出后不挨个对着看根本不知道谁是谁,baidu了很多个案例后决定每个数据输出时严格控制格式,采取|将其分隔。使其看上去愈加严谨,美观。其实很多小细节也要处理好才能愈加好表现出这个系统优点。6 心得体会经过这次课程设计,使我愈加扎实掌握了相关操作系统方面知识,尤其是进程和多种调度算法。进程调度即使是在系统内部低级调度,但进程调度
12、优劣直接影响作业调度性能。反应作业调度优劣周转时间和平均周转时间只在某种程度上反应了进程调度性能,比如,其实施时间部分中实际上包含有进程等候(包含就绪状态时等候)时间,而进程等候时间多少是要依靠进程调度策略和等候事件何时发生等来决定。所以,进程调度性能商议是操作系统设计一个关键指标。所以进程调度关键性也是不可忽略。这次课程设计从选题到完成程序到最终写出课设汇报,中间碰到了很多大大小小问题,不过经过多方努力全部得以处理,即使它并不是一个完善系统,还存在着这么那样问题,不过已经进我努力去完善它。碰到问题时一定要不懈努力,不能碰到问题就想到要退缩,一定要不厌其烦发觉问题所在,然后一一进行处理,只有这
13、么,才能成功做成想做事。最终,感谢老师帮助及悉心指导,感谢同学们相互帮助,没有她们我自己也不可能完成此次在项目中任务,愈加让我明白了一个团体关键性,和个人力量单薄。总而言之,还是谢谢大家互帮互助,而完成这个项目,完成这次课设!7 参考文件1王红.操作系统原理及应用Linux.第二版.北京:中国水利水电出版社,.2王红.操作系统实训(Linux)习题解答、例题解析、试验指导.第二版.北京:中国水利水电出版社,.3孟静.操作系统原理教程.北京:清华大学出版社,.4周苏、金海溶. 操作系统原理试验.北京: 科学出版社,.8 附录 #include#include#includeusing names
14、pace std; /这么命名空间std内定义全部标识符全部有效(曝光)。就仿佛它们被申明为全局变量一样。#define MAX 10struct PCB_structchar name10; /进程名称int number; /进程编号int priority; /优先级 float come_T; /抵达时间float run_begin_T; /开始运行时间float run_end_T; /开始结束时间float run_T; /运行时间int order; /运行次序 int run_flag; /调度标志 PCBMAX,pcb; int counter; /实际生成进程个数 voi
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 操作系统 优秀 课程设计 优质 报告 进程 调度
限制150内