单处理机系统的进程调度

单处理机系统的进程调度
单处理机系统的进程调度

单处理机系统的进程调度

编写程序完成单处理机系统中的进程调度,要求采用时间片轮转调度算法。实现具体包括:首先确定进程控制块的内容和组成方式;然后完成进程创建原语和进程调度原语;最后编写主函数,对所做工作进行测试。

这个实验主要有三个问题:如何组织进程、如何创建进程和如何实现处理机调度。

进程控制块结构定义如下:

struct pcb

{

int name; //进程标识符

int status; //进程状态

int ax,bx,cx,dx; //进程现场信息,通用寄存器内容

int pc; //进程现场信息,程序计数器内容

int psw; //进程现场信息,程序状态字寄存器内容

int next; //下一个进程控制块的位置

}

存放进程控制块的区域:

#define n 10 //假定系统允许进程个数为10

struct pcb pcbarea[n]; //模拟进程控制块区域的数组

实验中指向运行进程的进程控制块指针、就绪队列指针和空闲进程控制块队列指针定义如下:

int run; //定义指向正在运行进程的进程控制块的指针struct

{ int head;

int tail

}ready; //定义指向就绪队列的头指针head和尾指针tail int pfree; //定义指向空闲进程控制块队列的指针

相关主题
相关文档
最新文档