#include<stdio.h>
#include<stdlib.h>
#include<iostream>
#include<malloc.h>
using namespace std;
struct PCB_type
{
int pid; //进程名
int state; //进程状态 2--表示"执行"状态 1--表示"就绪"状态 0--表示"阻塞"状态
int cpu_time; //运行需要的cpu时间(需运行的时间片个数)
};
typedef struct QueueNode //队列链表
{
struct PCB_type PCB;
struct QueueNode *next;
}*QueueLink;
//设置全程变量
struct QueueNode *ready_head=NULL, //ready队列队首指针
*ready_tail=NULL , //ready队列队尾指针
*blocked_head=NULL, //blocked队列队首指针
*blocked_tail=NULL; //blocked队列队尾指针
int t; //定义一个全局变量个时间片系统释放资源,唤醒处于阻塞队列队首的进程
//设置相应的子程序
void start_state() //读入假设的数据,设置系统初始状态
{
int i,n,m; //用来计数循环
QueueLink p,p1,p2; //一个节点指针
printf("输入n个进程处于就绪状态,m个进程处于阻塞状态,且每过t个时间片系统释放资源,唤醒处于阻塞队列队首的进程。");
scanf("%d,%d,%d",&n,&m,&t);
//创建链表
//创建一个节点
p1=(QueueLink)
操作系统--进程调度(C语言)
于 2019-07-08 17:22:05 首次发布