进程有三种状态:就绪态,运行态和阻塞态
我们来进行进程操作的实验
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
struct PCB_type{
int pid; //进程ID
int priority; //优先级
int size; //大小
int state; //标志进程状态,0为不在内存,1为在内存,2为挂起
char info[10];
};
struct PCB_type memory[50];
int pid;
int num=0; //进程数量
int suspend=0;//挂起数量
int flag=0;//标记
int i,j;
/*********************创建新进程*************************/
void create()
{
if(num>=50) printf("\n内存已满,请先换出或结束进程\n");
else{
for(i=0;i<50;i++)
{
if(memory[i].state==0)
{
break;
}
}
printf("\n请输入新建进程的pid值\n");
scanf("%d",&memory[i].pid);
for(j=0;j<i;j++)//判断之前是否存在相同的进程
{
if(memory[j].pid==memory[i].pid)
{