欢迎来到天天文库
浏览记录
ID:48804781
大小:139.50 KB
页数:11页
时间:2020-01-26
《操作系统课程设计(进程调度).ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、操作系统课程实验周会娟课程实验的目的和意义培养程序设计的方法和技巧掌握操作系统的原理和功能进程调度实验目的要求用高级语言编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解。(注意:这里只是模拟的进程调度程序,用一个链表结点模拟一个进程,而不用我们之前用过的createprocess函数创建进程)进程调度实验用三个队列,就绪、运行、完成来表示进程的不同状态。当新来一个进程时,若采用静态优先级,则根据优先级插入就绪队列中不同位置(若队列为空,则直接插入)。若采用时间片,则直接插入就绪队列队尾。实验例题设计一个有N个进程共行的进程调度程序
2、链表中每一个结点包括两部分:(1)用户需要用的实际数据;(name[10];intprio;intround;intcputime;intneedtime;需自己输入)(2)下一个结点的地址;typedefstructnode{charname[10];/*进程标识符*/intprio;/*进程优先数*/intround;/*进程时间轮转时间片*/intcputime;/*进程占用CPU时间*/intneedtime;/*进程到完成还要的时间*/intcount;/*计数器*/charstate;/*进程的状态*/structnode*next;/
3、*链指针*/}PCB;实验例题设计一个有N个进程共行的进程调度程序静态最高优先数优先:采用静态最高优先数优先的调度算法(即在创建进程时确定该进程的优先级,并在整个进程运行期间优先级不发生变化)。实验例题设计一个有N个进程共行的进程调度程序进程控制块(PCB):、优先数、到达时间、需要运行时间、已用CPU时间、进程状态等。进程名、进程的优先数及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程的运行时间以时间片为单位进行计算。每个进程的状态可以是就绪W(Wait)、运行R(Run)、或完成F(Finish)三种状态之一。静态最高优先数调度算
4、法的流程图如下:时间片轮转调度算法就绪进程获得CPU后都只能运行一个时间片。如果运行一个时间片后,进程的已占用CPU时间已达到所需要的运行时间,则撤消该进程;如果进程在所分的时间片内没有运行完成,则把它重新插入就绪队列等待CPU。时间片轮转调度算法的流程图如下:三.实验题编写并调试一个模拟的进程调度程序,采用“最高优先数优先”调度算法或“轮转法”调度算法对进程进行调度。要求同学们自行完成函数:/*优先数调度算法,运行中优先数不变*/voidpriority(charalg){}
此文档下载收益归作者所有