#include <iostream>
#include <stdlib.h>
#include <string.h>
using namespace std;
typedef struct node
{
char name[20]; /*进程的名字*/
int prio; /*进程的优先级*/
int round; /*分配CPU的时间片*/
int cputime; /*CPU执行时间*/
int needtime; /*进程执行所需要的时间*/
char state; /*进程的状态,W--就绪态,R--执行态,F--完成态*/
int count; /*记录执行的次数*/
struct node *next; /*链表指针*/
}PCB;
PCB *ready=NULL,*run=NULL,*finish=NULL; /*定义三个队列,就绪队列,执行队列和完成队列*/
int num;
void GetFirst(); /*从就绪队列取得第一个节点*/
void Output(); /*输出队列信息*/
void InsertPrio(PCB *in); /*创建优先级队列,规定优先数越小,优先级越高*/
void InsertTime(PCB *in); /*时间片队列*/
void InsertFinish(PCB *in); /*时间片队列*/
void PrioCreate(); /*优先级输入函数*/
void TimeCreate(); /*时间片输入函数*/
void Priority(); /*按照优先级调度*/
void RoundRun(); /*时间片轮转调度*/
int main(void)
{
int c;
printf("请输入要创建的进程数目:\n");
scanf("%d",&num);
getchar();
while(1){
cout<<"***********************************************************"<<endl;
cout<<" 1.优先级 "<<endl;
cout<<" 2.时间片 "<<endl;
cout<<" 3.退出 "<<endl;
cout<<"***********************************************************"<<endl;
cout<<"请选择: ";
cin>>c;
cout<<endl;
if(c==3)
#include <stdlib.h>
#include <string.h>
using namespace std;
typedef struct node
{
char name[20]; /*进程的名字*/
int prio; /*进程的优先级*/
int round; /*分配CPU的时间片*/
int cputime; /*CPU执行时间*/
int needtime; /*进程执行所需要的时间*/
char state; /*进程的状态,W--就绪态,R--执行态,F--完成态*/
int count; /*记录执行的次数*/
struct node *next; /*链表指针*/
}PCB;
PCB *ready=NULL,*run=NULL,*finish=NULL; /*定义三个队列,就绪队列,执行队列和完成队列*/
int num;
void GetFirst(); /*从就绪队列取得第一个节点*/
void Output(); /*输出队列信息*/
void InsertPrio(PCB *in); /*创建优先级队列,规定优先数越小,优先级越高*/
void InsertTime(PCB *in); /*时间片队列*/
void InsertFinish(PCB *in); /*时间片队列*/
void PrioCreate(); /*优先级输入函数*/
void TimeCreate(); /*时间片输入函数*/
void Priority(); /*按照优先级调度*/
void RoundRun(); /*时间片轮转调度*/
int main(void)
{
int c;
printf("请输入要创建的进程数目:\n");
scanf("%d",&num);
getchar();
while(1){
cout<<"***********************************************************"<<endl;
cout<<" 1.优先级 "<<endl;
cout<<" 2.时间片 "<<endl;
cout<<" 3.退出 "<<endl;
cout<<"***********************************************************"<<endl;
cout<<"请选择: ";
cin>>c;
cout<<endl;
if(c==3)