操作系统课程设计

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计(论文)

课程名称计算机操作系统

题目名称调度算法

学部(系)

专业班级

学号

学生姓名

指导教师

2013 年 12 月 31 日

课程设计(论文)任务书

一、课程设计(论文)的内容

用户使用操作系统的主要目的是作业处理。一个作业进入系统到运行结束,一般需经历收容、运行、完成三个阶段,与这三个阶段对应的作业处于后备、运行和完成三种状态。作业调度的主要功能是按照某种原则从后备作业队列中选取作业进入主存,并为作业做好运行前的准备工作和作业完成后的善后处理工作。常用的作业调度算法有:先来先服务、短作业优先、响应比高者优先、优先数优先等调度算法。衡量作业调度算法性能的主要指标有:作业的周转时间、作业的平均周转时间和平均带权周转时间。

二、课程设计(论文)的要求与数据

(1)需求分析

(2)系统设计

(3)模块代码能正常运行

(4)提供合理的测试数据

(5)设计说明文档

三、课程设计(论文)应完成的工作

(1)采用模块化的程序设计方法,程序书写符合规范,代码应完善。

(2)要有运行结果和过程的界面截图。

(3)对系统进行初步的错误和漏洞检测;

(4)根据论文规范撰写论文,用A4纸打印并按时提交。

四、课程设计(论文)进程安排

五、应收集的资料及主要参考文献

[1]郁红英,李春强.《计算机操作系统》北京:清华大学出版社,2008

[2]凤羽.《操作系统》.北京:电子工业出版社,2004

[3]孟静.《操作系统原理教程》.北京:清华大学出版社,2000

[4]周苏、金海溶.《操作系统原理实验》.北京: 科学出版社,2000

[5]孟庆昌.《操作系统教程》.北京:电子工业出版社,2004

[6]陈向群,杨芙清.《操作系统教程》.2版.北京:北京大学出版社,2006

[7]黄干平,陈洛资,等.《计算机操作系统》.北京:科技出版社,1989

[8]冯耀林,杜舜国.《操作系统》.西安:西安电子科技大学出版社,1989

[9]黄祥喜.《计算机操作系统实验教程》.广州:中山大学出版社,1994

发出任务书日期: 2013 年 12 月 1 日指导教师签名:

计划完成日期: 2013 年 12 月 31 日

随着社会科学技术的迅猛发展,计算机以它卓越的进步已经遍布各行各业,其实计算机本身就是一堆废铁,而操作系统使它有了生命和灵魂,操作系统就相当于人的各个组织,如果没有操作系统那计算机就像一个植物人一样,毫无价值。

操作系统是配置在计算机上的第一层软件,是对硬件系统的首次扩充。它在计算机系统中占据了特别重要的地位,很多系统软件以及大量的应用软件都依赖于操作系统的支持,取得它的服务。在计算机系统上所配置的操作系统的主要目标与计算机系统的规模和操作系统的应用环境有关,而操作系统在计算机系统中所起的作用也可以从不同的角度来观察。操作系统已成为从大型机直至微型机都配置的软件,在不同的操作系统中采用的调度方式是不同的,它不仅是计算机与用户之间的接口,也是计算机资源的管理者。

当今的的计算机已经从无操作系统到单道批处理系统再发展到多道程序系统然后是分时系统和实时系统。在多道程序系统中,一个作业被提交后必须经过处理机调度后,方能获得处理机执行。作业是一个比程序更为广泛的概念,它不仅包含了通常的程序和数据,而且还应配有一分作业说明书,系统根据该说明书来对程序的运行进行控制。在批处理系统中,是以作业为基本单位从外存调入内存的。对于批量型作业而言,通常要经历作业调度和进程调度两个过程方能获得处理机。为了管理和调度作业,在多道批处理系统中为每个作业设置了一个作业控制块,即PCB(Job Control Block)每当作业进入系统是,系统便为每个作业创建一个PCB,根据作业类型将它插入相应的后备队列中,作业调度程序根据一定的算法来调度它们,被调度到的作业将会装入内存。作业调度的主要功能是根据作业控制块中的信息,审查系统能否满足用户作业的资源需求,以及按照一定的算法,从外存的后备队列中选取某些作业调入内存,并为它们创建进程,分配必要的资源,然后,再将新创建的进程排在就绪队列上,准备准备执行。

每次执行作业调度时,都需要做以下两个决定:

1.接纳多少个作业,取决于多道程序度即允许多少个作业同时在内存中运行,多道程序度的确定是根据系统的规模和运行速度等情况做适当的折中。

2.接纳哪些作业,取决于采用的调度算法。作业调度的算法主要包括三种:先来先服务算法、短作业优先调度算法和高响应比优先调度算法。

本系统采用结构体定义作业的数据类型,用数组接纳各个作业,通过把创建的JCB结构体组织成链,用不同算法循环测试处理的每个作业,来确定各个作业接受系统服务的次序,从而输出每个算法对作业处理结果,即平均周转时间。从而确定哪种算法对于本次的作业调度是最佳的算法。

关键词操作系统,作业调度,调度算法,优先权,响应比,平均周转时间,最佳算法

1 序言 (1)

2 设计原理 (1)

2.1先来先服务调度算法 (2)

2.2短作业优先调度算法 (2)

2.3高响应比优先调度算法 (2)

3 程序分析 (3)

3.1系统操作 (3)

3.2程序功能结构图 (3)

3.3程序功能流程图 (4)

3.3.1创建作业流程图 (4)

3.3.2先来先服务调度算法流程图 (4)

3.3.3短作业优先调度算法流程图 (4)

3.3.4响应比优先调度算法流程图 (5)

3.3.5总结最优调度算法流程图 (6)

4 程序的实现 (6)

4.1主函数程序实现 (6)

4.1.1主程序实现功能 (6)

4.1.2主程序实现代码 (7)

4.2创建作业函数的实现 (8)

4.2.1函数说明 (8)

4.2.2创建函数实现代码 (8)

4.3先来先服务函数 (9)

4.3.1函数说明 (9)

4.3.2先来先服务代码 (9)

4.4短作业优先函数 (10)

4.4.1函数说明 (11)

4.4.2短作业优先代码 (11)

4.5响应比高者优先函数 (13)

4.5.1函数说明 (13)

4.5.2响应比高者优先代码 (13)

4.6总结函数 (15)

4.6.1 函数说明 (15)

4.6.2总结函数实现代码 (15)

5 系统运行结果 (16)

5.1主函数运行界面 (16)

5.2创建函数运行界面 (16)

5.3先来先服务调度算法运行界面 (17)

5.4短作业优先函数运行界面 (18)

5.5响应比高者优函数运行结果 (18)

5.6总结函数运行界面 (19)

总结 (20)

相关文档
最新文档