进程调度算法模拟实验

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

华北科技学院计算机系综合性实验

实验报告

课程名称操作系统C

实验学期2012至2013学年第2学期学生所在系部计算机系

年级专业班级

学生姓名学号

任课教师杜杏菁

实验成绩

计算机系制

《操作系统C》课程综合性实验报告

开课实验室:基础六机房2013年6月3日

实验题目进程调度算法模拟

一、实验目的

通过对进程调度算法的模拟,进一步理解进程的基本概念,加深对进程运行状态和进程调度过程、调度算法的理解。

二、设备与环境

1.硬件设备:PC机一台

2.软件环境:安装Windows操作系统或者Linux操作系统,并安装相关的程序开发环境,如C \C++\Java等编程语言环境。

三、实验内容

(1)用C语言(或其它语言,如Java)实现对N个进程采用某种进程调度算法(如动态优先权调度)的调度。

(2)每个用来标识进程的进程控制块PCB可用结构来描述,包括以下字段:

✧进程标识数ID。

✧进程优先数PRIORITY,并规定优先数越大的进程,其优先权越高。

✧进程已占用CPU时间CPUTIME。

✧进程还需占用的CPU时间ALLTIME。当进程运行完毕时,ALLTIME变为0。

✧进程的阻塞时间STARTBLOCK,表示当进程再运行STARTBLOCK个时间片后,进程将进

入阻塞状态。

✧进程被阻塞的时间BLOCKTIME,表示已阻塞的进程再等待BLOCKTIME个时间片后,将

转换成就绪状态。

✧进程状态STATE。

✧队列指针NEXT,用来将PCB排成队列。

(3)优先数改变的原则:

✧进程在就绪队列中呆一个时间片,优先数增加1。

✧进程每运行一个时间片,优先数减3。

(4)为了清楚地观察每个进程的调度过程,程序应将每个时间片内的进程的情况显示出来,包括正在运行的进程,处于就绪队列中的进程和处于阻塞队列中的进程。

第10页

相关文档
最新文档