南通大学计算机科学与技术学院。
操作系统课程设计。
报告书。班级计091
姓名。学号。
指导教师戴树贵。
日期 2011.12.26 ~ 2012.12.30
目录。1 设计目的 2
2 设计内容和要求 2
1.作业进程调度算法: 2
2.银行家算法: 3
3.页面替换算法: 3
4.驱动调度算法: 3
3.算法实现 4
4.运行结果 5
4.1作业进程调度算法 5
4.2银行家算法: 8
4.3页面替换算法: 8
4.4驱动调度算法: 9
1、 进一步理解作业调度算法、银行家算法、页面替换算法和驱动调度算法的相关内容。
2、 明白作业调度算法、银行家算法、页面替换算法和驱动调度算法的主要任务。
3、 通过编程掌握作业调度算法、银行家算法、页面替换算法和驱动调度算法。
1.1先来先服务算法(first come first served,fcfs)
按照作业进入系统后备作业队列的先后次序来挑选作业,先进入系统的作业将优先被挑选进入主存,创建用户进程,分配所需资源,然后,移入就绪队列。
1.2最短作业优先算法(shortest job first,sjf)
以进入系统的作业所要求的cpu运行时间的长短为标准,总是选取预计计算时间最短的作业投入运行。
1.3响应比最高者优先算法(highest response ratio first,hrrf)
是介于fcfs算法与sjf算法之间的一种折中的非剥夺式算法,既考虑作业的等待时间,有考虑作业的处理时间。
银行家拥有一笔周转资金,客户要求分期贷款,如果客户能够得到各期贷款,就一定能够归还贷款,否则就一定不能归还贷款,银行家应谨慎的贷款,防止出现坏帐
3.1最佳页面替换算法opt :
调入一页而必须淘汰一个旧页时,所淘汰的页应该是以后不再访问的页或距现在最长时间后再访问的页。
3.2先进先出页面替换算法fifo
算法总是淘汰最先调入主存的那一页,或者说在主存中驻留时间最长的那一页(常驻的除外)。
3.3最近最少用页面替换算法lru
算法淘汰的页面是在最近一段时间里较久未被访问的那页。
根据程序局部性原理,那些刚被使用过的页面,可能马上还要被使用,而在较长时间里未被使用的页面,可能不会马上使用到。
3.4第二次机会页面替换算法scr
改进fifo算法,把fifo与页表中的“引用位”结合起来使用:
检查fifo中的队首页面(最早进入主存的页面),如果它的“引用位”是0,这个页面既老又没有用,选择该页面淘汰;
如果“引用位”是1,说明它进入主存较早,但最近仍在使用。把它的“引用位”清0,并把这个页面移到队尾,把它看作是一个新调入的页。
算法含义:最先进入主存的页面,如果最近还在被使用的话,仍然有机会作为像一个新调入页面一样留在主存中。
3.5时钟页面替换算法clock fifo算法。
把scr算法中的fifo队列改为循环页面队列, 减少入队出队操作。
一个页面首次装入主存,其“引用位”置0 。
主存中的任何页面被访问时, “引用位”置1。
淘汰页面时,从指针当前指向的页面开始扫描循环队列,把遇到的“引用位”是1的页面的“引用位”清0,跳过这个页面; 把所遇到的“引用位”是0的页面淘汰掉,指针推进一步。
1、先来先服务算法(fcfs)
这是一种比较简单的磁盘调度算法。它根据进程请求访问磁盘的先后次序进行调度。此算法的优点是公平、简单,且每个进程的请求都能依次得到处理,不会出现某一进程的请求长期得不到满足的情况。
此算法由于未对寻道进行优化,在对磁盘的访问请求比较多的情况下,此算法将降低设备服务的吞吐量,致使平均寻道时间可能较长,但各进程得到服务的响应时间的变化幅度较小。
2、最短寻道时间优先算法(sstf)
该算法选择这样的进程,其要求访问的磁道与当前磁头所在的磁道距离最近,以使每次的寻道时间最短,该算法可以得到比较好的吞吐量,但却不能保证平均寻道时间最短。其缺点是对用户的服务请求的响应机会不是均等的,因而导致响应时间的变化幅度很大。在服务请求很多的情况下,对内外边缘磁道的请求将会无限期的被延迟,有些请求的响应时间将不可预期。
3、扫描算法(scan)
扫描算法不仅考虑到欲访问的磁道与当前磁道的距离,更优先考虑的是磁头的当前移动方向。例如,当磁头正在自里向外移动时,扫描算法所选择的下一个访问对象应是其欲访问的磁道既在当前磁道之外,又是距离最近的。这样自里向外地访问,直到再无更外的磁道需要访问才将磁臂换向,自外向里移动。
这时,同样也是每次选择这样的进程来调度,即其要访问的磁道,在当前磁道之内,从而避免了饥饿现象的出现。由于这种算法中磁头移动的规律颇似电梯的运行,故又称为电梯调度算法。此算法基本上克服了最短寻道时间优先算法的服务集中于中间磁道和响应时间变化比较大的缺点,而具有最短寻道时间优先算法的优点即吞吐量较大,平均响应时间较小,但由于是摆动式的扫描方法,两侧磁道被访问的频率仍低于中间磁道。
4、循环扫描算法(cscan)
循环扫描算法是对扫描算法的改进。如果对磁道的访问请求是均匀分布的,当磁头到达磁盘的一端,并反向运动时落在磁头之后的访问请求相对较少。这是由于这些磁道刚被处理,而磁盘另一端的请求密度相当高,且这些访问请求等待的时间较长,为了解决这种情况,循环扫描算法规定磁头单向移动。
例如,只自里向外移动,当磁头移到最外的被访问磁道时,磁头立即返回到最里的欲访磁道,即将最小磁道号紧接着最大磁道号构成循环,进行扫描。
具体**详见os文件夹。
课程设计报告格式 课程设计
洛阳理工学院。课程设计说明书。课程名称。设计课题。专业。班级。学号。姓名。完成日期2014年12月26日。问题描述 小四宋体,行间距单倍行距,每段缩进两个字符。叙述一下设计的内容要求。基本要求 小四宋体,行间距单倍行距,每段缩进两个字符。叙述一下设计的基本要求。测试数据 小四宋体,行间距单倍行距,每...
课程设计总结,课程设计报告
课程设计总结,课程设计报告。3.尝试应用项目管理软件进行项目进程的规划管理 绘制甘特图,不作硬性要求 二 选题说明。人事管理是企业信息管理的重要部分,面对大量的人事工资信息,财务部门采用人力处理将浪费大量的时间 人力和物力,且数据的准确性低。因此,开发一个界面友好,易于操作的人事工资管理软件进行自动...
课程设计 课程设计报告格式
学校名。课程设计报告。课程名称 c语言程序设计 系别 专业班级 学号。姓名。课程题目 企业人事管理系统 完成日期 指导老师 年月日。附件。课程设计的内容。企业人事管理系统 本项目的目标是开发一个功能实用,操作简便,简单明了的人事管理系统。能够录入人事的基本资料,在操作上能够完成诸如添加 修改 删除 ...