当前位置:首页 > 操作系统实验指导书
3)流程图:
图一.最高优先级优先调度算法流程图
<二>简单轮转法调度算法
1)简单轮转法的基本思想:
所有就绪进程按 FCFS排成一个队列,总是把处理机分配给队首的进程,各进程占用CPU的时间片相同。即将CPU的处理时间划分成一个个相同的时间片,就绪队列的诸进程轮流运行一个时间片。当一个时间片结束时,如果运行进程用完它的时间片后还未完成,就强迫运行机制进程让出CPU,就把它送回到就绪队列的末尾,等待下一次调度。同时,进程调度又去选择就绪队列中的队首进程,分配给它一时间片,以投入运行。直至所有的进程运行完毕。
4
2)详细设计:
1、设系统有5个进程,每个进程用一个进程控制块PCB来代表。 2、为每个进程任意确定一个要求运行时间。
3、按照进程输入的先后顺序排成一个队列。再设一个队首指针指向第一个到达进程的首址。
4、执行处理机调度时,开始选择队首的第一个进程运行。另外,再设一个当前运行进程的指针,指向当前正在运行的进程。
5.考虑到代码的可重用性, 轮转法调度程序和最高优先级优先调度是调用同一个模快进行输出。 6.进程运行一次后,以后的调度则将当前指针依此下移一个位置,指向下一个进程,即调整当前运行指针指向该进程的链接指针所指进程,以指示应运行进程。同时还应判断该进程的要求运行时间是否等于已运行时间。若不等,则等待下一轮的运行,否则将该进程的状态置为完成态C,并退出循环队列。
7.若就绪队列不空,则重复上述的(5)和(6)步骤直到所有的进程都运行完为止。
8.在所设计的调度程序中,包含显示或打印语句。显示或打印每次选中的进程的名称及运行一次后队列的变化情况。
3)流程图
5
图二. 简单轮转法调度算法流程图
五、思考题
(1) (2) (3) (4)
处理机调度的目的?
你实现优先数调度算法的思想?
你采用时间片轮转法实现处理机调度的思想? 比较效率如何?
六、实验报告
(1) 实验题目。
(2) 程序中使用的数据结构及符号说明。 (3) 流程图。
6
(4) 打印一份源程序并附上注释。
(5) 打印程序运行时的初值和运行结果。
参考资料
(1)《计算机操作系统》(修订版),汤子瀛等编,西安电子科技大学出版社,2001-8。
(2)《<计算机操作系统>学习指导与题解》,汤子瀛等编, 西安电子科技大学出版社,2003-3。
7
共分享92篇相关文档