实验项目——进程调度模拟实验

上传人:m**** 文档编号:488262782 上传时间:2023-11-04 格式:DOCX 页数:4 大小:94.57KB
返回 下载 相关 举报
实验项目——进程调度模拟实验_第1页
第1页 / 共4页
实验项目——进程调度模拟实验_第2页
第2页 / 共4页
实验项目——进程调度模拟实验_第3页
第3页 / 共4页
实验项目——进程调度模拟实验_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《实验项目——进程调度模拟实验》由会员分享,可在线阅读,更多相关《实验项目——进程调度模拟实验(4页珍藏版)》请在金锄头文库上搜索。

1、实验项目(二)进程调度模拟实验实验类型设计实验学时4一、实验目的设计一个有N个进程并行的进程调度程序二、设备与环境1. 硬件设备:PC机一台2. 软件环境:安装Windows操作系统或者Linux操作系统,并安 装相关的程序开发环境,如C C+Java等编程语言环境。三、实验要求要求学生熟练掌握最高优先级优先的进程调度算法,并使用C 语言编写程序模拟若干个进程的进程调度过程。1问题描述:进程调度算法:采用最高优先级优先的调度算法。每个进程有一个进程控制块(PCB)表示。进程控制块可以包 含进程名、优先级、到达时间、需要运行时间、已用CPU时间、进 程状态等等。进程的运行时间以时间片为单位进行计

2、算。每个进程的状态是就绪W(Wait)、运行R(Run)、或完成卜 (Finis)三种状态之一。进程名、优先级、需要运行时间通过键盘输入。就绪进程获得CPU后都只能运行一个时间片。用已占用CPU时 间加1来表示。运行一个时间片后,进程的已占用CPU时间已达到所需要的运 行时间,则撤消该进程,否则将进程的优先级减1 (即降低一级), 然后把它插入就绪队列等待CPU。每进行一次调度程序都打印一次运行进程、就绪队列、以及各个 进程的PCB,以便进行检查。重复以上过程,直到所有进程都完成为止。2.调度算法的流程图:运行旌程已占用 CPU时间已达到所 需的云行瞄河初始化双土输人避程信息就需队列苜进程投入

3、运行已到达时间片到运行进程已占用CPU时间H咎进程按就光致从蒿倒临撮列【注意事项】1. 遵守实验室的规章制度,维护实验教学秩序,不得随意拆卸、 移动计算机。2. 注意使用模块化程序设计方法,逐模块进行编写和调试。3. 独立完成实验,根据实验测试数据和结果认真完成实验报告。通过动态优先权算法模拟加深进程概念和对进程调度过程的理解。模拟动态优先权算法:通过结构体构造一个PCB结构,用于记录当前进程的相关状态信息。 包括:struct pcb /定义进程控制块PCBchar name10; /进程标识符PID (进程名)char state;/进程状态,w表示就绪态(等待),r表示运行态int su

4、per;/进程的优先级,规定数字越大,优先级别越高int needtime;/进程需要运行的时间int runtime;/进程已经运行的时间struct pcb* lin/定义后继指针。队列指针lini用来将PCB排成队列*readylist; /readyli表示就绪队列主要构建的函数及功能:(1) input :)输入各进程的基本信息,包括进程名、优先权、运行时间。(2) sort。对进程的优先级进行排列(3) disp()用于显示当前进程的运行情况和状态(4) check。检查等待队列的进程是否进入就绪队列(5) running()执行进程,进程运行时间到,判断是进程结束(撤销)还是将状态从运 行态置为就绪态系统将所有就绪队列按优先级高低排成一个队列。实验时,优先级给的数字越大,表示优先级别越高。每次调度时,将CPU分配给优先级最高的进程,并令其执行一个时间片,而后中断, 判断当前进程是否完成。如果没有完成,将优先级4,重新插入到就绪队列中,使队列仍然 有序。如果完成了,就退出整个执行体系。系统继续寻找下一个优先级最高的进程执行。所 有进程的优先级随着进程的推进或其等待时间的增加而增加,从而保证一定的公平性。优先权=(等待时间+要求服务时间)/要求服务时间实验时规.定.刚刚被运行过的进程优先权减1。定义进程控制块PCB 对进程优先级进行排序

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号