5、的PCB,插到就绪队列的队尾;(3)FIRSTIN——调度就绪队列的第一个进程投入运行;(4)PRINT——显示每执行一次后所有进程的状态及有关信息。(5)CREATE——创建新进程,并将它的PCB插入就绪队列;(6)PRISCH——按优先数算法调度进程;(7)ROUNDSCH——按时间片轮转法调度进程。主程序定义PCB结构和其他有关变量。(四)运行和显示程序开始运行后,首先提示:请用户选择算法,输入进程名和相应的NEEDTIME值。每次显示结果均为如下5个字段: name cputi
7、#include #include #include typedef struct node { char name[20]; /进程的名字/ int prio; /进程的优先级/ int round; /分配CPU的时间片/ int cputime; /CPU执行时间/ int needtime; /进程执行所需要的时间/ char s
8、tate; /进程的状态,W——就绪态,R——执行态,F——完成态/ int count; /记录执行的次数/ struct node next; /链表指针/ }PCB; PCB ready=NULL,run=NULL,finish=NULL; /定义三个队列,就绪队列,执行队列和完成队列/ int num; void GetFirst(); /从就绪队列取得第一个节点/ Word可编辑资料专业分享void Outpu