实验项目三 进程调度
实验目的
理解进程控制块和进程组织方式;
掌握时间片轮转调度算法实现处理机调度。
实验内容
建立合理的PCB数据结构,建立含有8个进程结点的就绪队列,每个进程的要求运行时间随机产生,要求每个进程的要求运行时间不大于15。
设置时间片大小(3~6),使用时间片轮转调度算法实现处理机调度。
源程序及运行结果
源程序:
#include
#include
#include
#define LEN sizeof(PCB)
#define tp 5
#define NUM 8
int main()
{
struct PCB
{
int name;
int runtime;
int runedtime;
int killtime;
struct PCB *next;
};
typedef struct PCB PCB;
int i;
PCB *runqueue;//运行队列指针
PCB *top,*tail,*temp;//就绪队列指针
srand((int)time(0));
for