《通用处理机调度演示程序源代码?/p>
//
短作业优先算?/p>
#define MaxNum 100
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
struct Process_struct{
int
Number;
//
进程编号
char Name[MaxNum];
//
进程名称
int
ArrivalTime;
//
到达时间
int
ServiceTime;
//
开始运行时?/p>
int
FinishTime;
//
运行结束时间
int
WholeTime;
//
运行时间
int run_flag;
//
调度标志
int order;
//
运行次序
double
WeightWholeTime;
//
周转时间
double AverageWT_FCFS,AverageWT_SJF;
//
平均周转时间
double AverageWWT_FCFS,AverageWWT_SJF;
//
平均带权周转时间
}Process[MaxNum];
int N;
//
实际进程个数
int SJF();
//
短作业优?/p>
int SJF(){
//
短作业优先算?/p>
int temp_time=0;
//
当期那时?/p>
int i=0,j;
int number_schedul,temp_counter;
//
进程编号,当前已执行进程个数
float run_time;
run_time=Process[i].WholeTime;
j=1;
while((j<N)&&(Process[i].ArrivalTime==Process[j].ArrivalTime))
//
判断是否
有两个进程同时到?/p>
{
if(Process[j].WholeTime<Process[i].WholeTime)