操作系统实验三 进程调度

2019-07-13 19:30

操作系统实验

实验三 进程调度

学号 姓名 班级

华侨大学电子工程系

一、实验目的

1、理解有关进程控制块、进程队列的概念。

2、掌握进程优先权调度算法和时间片轮转调度算法的处理逻辑。

二、实验内容与基本要求

1、设计进程控制块PCB的结构,分别适用于优先权调度算法和时间片轮转

调度算法。 2、建立进程就绪队列。

3、编制两种进程调度算法:优先权调度算法和时间片轮转调度算法。

三、 优先权调度算法和时间片轮转调度算法原理

优先级调度算法细分成如下两种方式:

非抢占式优先级算法:

在这种调度方式下,系统一旦把处理机分配给就绪队列中优先级最高的进程后,该进程就能一直执行下去,直至完成;或因等待某事件的发生使该进程不得不放弃处理机时,系统才能将处理机分配给另一个优先级高的就绪进程。

抢占式优先级调度算法

在这种调度方式下,进程调度程序把处理机分配给当时优先级最高的就绪进程,使之执行。一旦出现了另一个优先级更高的就绪进程时,进程调度程序就停止正在执行的进程,将处理机分配给新出现的优先级最高的就绪进程。

在早期的时间片轮转法中,系统将所有的就绪进程按先来先服务的原则,排成一个队列,每次调度时,把CPU分配给队首进程,并令其执行一个时间片.时间片的大小从几ms到几百ms.当执行的时间片用完时,由一个计时器发出时钟中断请求,调度程序便据此信号来停止该进程的执行,并将它送往就绪队列的末尾;然后,再把处理机分配给就绪队列中新的队首进程,同时也让它执行一个时间片.这样就可以保证就绪队列中的所有进程,在一给定的时间内,均能获得一时间片的处理机执行时间。

对于时间片轮转法,时间片大小的确定是很重要的。一般可根据以下三点确定时间片大小:

1.系统对响应时间的要求 2.就绪队列中进程的数目 3.系统的处理能力

四、 程序流程图 1、 总流程图

输入进程数目创建进程就绪队列链表让用户依次输入各进程名、开始时间、运行时间、优先级打印创建后的进程链表,以便用户查看算法类型选择界面1、先来先服务算法2.时间片轮转算法3.优先级算法4、退出

2、时间片轮转算法流程图

在进入本算法前,已输入就绪队列及时间片值是判断进程就绪队列是否为空否剩余运行时间是否为0?否剩余运行时间是否大于时间片是否执行该进程,并将其剩余运行时间置0,将该进程的剩余运行时间置为原剩余运行时间与时间片timeturn的差完成标志位time2自加一就绪队列首进程移位否time2是否等于输入的进程数n是算法结束,返回算法选择界面

3、优先级算法流程图 采用非抢占式优先级算法。

输入就绪队列各进程PCB的参数,如进程名、到达时间等就绪队列是否为null是否将就绪队列链表按优先级排序就绪队列移位,队首变为优先级次高的进程执行就绪队列队首的进程直至完成将完成的进程移出就绪队列否就绪队列是否为空是算法结束,返回算法选择界面


操作系统实验三 进程调度.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:外墙铝塑板挑檐施工-技术交底

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: