操作系统课程设计六种算法 下载本文

内容发布更新时间 : 2025/1/8 2:25:22星期一 下面是文章的全部内容请认真阅读。

实用文档

《计算机操作系统》

课 程 设 计 报 告

学号:1367003270 班级:软技4班 姓名:张靖伟

实用文档

目 录

1 实验:进程调度算法——时间片轮转算法 2 实验:银行家算法

3 实验:分区分配算法——BF和FF 4 实验:页面置换算法——FIFO和LRU 5 实验:磁盘调度算法——SCAN和SSTF

实用文档

1实验:进程调度算法——时间片轮转算法

1.实验设计说明

用时间片轮转算法模拟单处理机调度。

(1) 建立一个进程控制块PCB来代表。PCB包括:进程名、到达时间、运行时

间和进程后的状态。

进程状态分为就绪(R)和删除(C)。

(2) 为每个进程任意确定一个要求运行时间和到达时间。

(3) 按照进程到达的先后顺序排成一个队列。再设一个指针指向队首和队尾。 (4) 执行处理机调度时,开始选择对首的第一个进程运行。 (5) 执行: a)输出当前运行进程的名字;

b)运行时间减去时间片的大小。

(6) 进程执行一次后,若该进程的剩余运行时间为零,则删除队首,并将该进

程的状态置为C;若不为空,则将向后找位置插入。继续在运行队首的进程。

(7) 若进程队列不空,则重复上述的(5)和(6)步骤直到所有进程都运行完

为止。

2.实验代码

/*****************时间片轮转调度算法*******************/ #include #include #include #define N 10 int time=0; bool spe=false;

typedef struct pcb /*进程控制块定义*/ {

char pname[N]; /*进程名*/