陈泳鑫3110006379操作系统实验报告

2018-12-24 12:38

实 验

课程名称 操作系统 学 院 计算机学院 专 业 软件工程 年级班别 10级4班 学 号 3110006379 学生姓名 陈泳鑫 指导教师 梁路

2013 年 1 月 10 日

实验一:进程调度

一、 实验目的

用高级语言编写和调试一个进程调度程序,以加深对进程的概念及进程调度算法的理解。

二、实验内容和要求

编写并调试一个模拟的进程调度程序,采用“简单时间片轮转法”调度算法对五个进程进行调度。

每个进程有一个进程控制块( PCB)表示。进程控制块可以包含如下信息:进程名、到达时间、需要运行时间、已运行时间、进程状态等等。

进程的到达时间及需要的运行时间可以事先人为地指定(也可以由随机数产生)。进程的到达时间为进程输入的时间。 进程的运行时间以时间片为单位进行计算。

每个进程的状态可以是就绪 W(Wait)、运行R(Run)两种状态之一。 就绪进程获得 CPU后都只能运行一个时间片。用运行时间加1来表示。

如果运行一个时间片后,进程的已占用 CPU时间已达到所需要的运行时间,则撤消该进程,如果运行一个时间片后进程的已占用CPU时间还未达所需要的运行时间,也就是进程还需要继续运行,此时应分配时间片给就绪队列中排在该进程之后的进程,并将它插入就绪队列队尾。 每进行一次调度程序都打印一次运行进程、就绪队列、以及各个进程的 PCB,以便进行检查。

重复以上过程,直到所要进程都完成为止。

三、实验主要仪器设备和材料

硬件环境:IBM-PC或兼容机 软件环境:C语言编程环境

四、实验原理及设计方案

1、进程调度算法:采用多级反馈队列调度算法。其基本思想是:当一个新进程进入内在后,首先将它放入第一个队列的末尾,按FCFS原则排队等待高度。当轮到该进程执行时,如能在该时间片内完成,便可准备撤离系统;如果它在一个时间片结束时尚为完成,调度程序便将该进程转入第二队列的末尾,再同样地按FCFS原则等待调度执行,以此类推。

2、实验步骤:

(1)按先来先服务算法将进程排成就绪队列。

(2)检查所有队列是否为空,若空则退出,否则将队首进程调入执行。

(3)检查该运行进程是否运行完毕,若运行完毕,则撤消进程,否则,将该进程插入到下一个逻辑队列的队尾。

(4)是否再插入新的进程,若是则把它放到第一逻辑队列的列尾。 (5)重复步骤(2)、(3)、(4),直到就绪队列为空。

五、流程图

开始 初始化PCB,输入进程信息 各进程按FCFS原则排队等待调度 所有队列都为空 是 退出程序 就绪队列首进程投入运行 时间片到,运行进程已占用CPU时间+1 运行进程已占用CPU时间已达到所需的运行时间 插入新的进程 把运行进程插入到下一个队列的队尾 是 进程完成,撤消该进程

六、结果过程及截图

初始化队列

输入所有进程后的进程信息如下:

按任意键继续运行进程:


陈泳鑫3110006379操作系统实验报告.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:苏教版小学语文六年级上册教材分析及解读

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

马上注册会员

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